C语言中比如printf(...%u...)和%d是一样的,可是是什么意思?还有%o,能否通俗点

如题所述

%u是用来输出unsigned型数据的,既无符号数,以十进制形式输出。
%d输出的是整型数据,带有负号。
通俗点就是用%d格式输出的数可以带有负号,%u输出的书都没有负号,用他们来输出同一个正数结果是一样的,单输出负数时结果就不一样了,如用%u格式输出-1时结果是65535(Turbo C环境下)
%o输出的是八进制数如:83转化为八进制是123
#include<stdio.h>
void main()
{
int a=83;
printf("%d,%o\n",a,a);
}结果是:83,123
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-02-24
c语言格式输出小结:
(1)最常用的格式是%d,含义是以10进制形式打印一个整数。
如果输出的整数是负数,则,输出的第一个字符就是‘-’号
(2)%u格式与%d格式类似,只不过要求打印无符号10进制整数。
(3)%o格式请求输出8进制整数
(4)%x和%X格式请求输出16进制整数。
%x格式中用小写字母a,b,c,d,e,f来表示10到15之间的数
%X格式中用大写字母A,B,C,D,E,F来表示10到15之间的数
共同点:8进制和16进制整数总是作为无符号数处理的。
(5)%s格式用于打印字符串,与之对应的参数应该是一个字符指针,待输出的字符始于该指针所指向的地址,直到出现一个空字符('\0')
才终止。
(6)%c格式用于打印单个字符:例如:
printf("%c",c); 等价于 putchar(c);
(7)%g,%f和%e这三个格式用于打印浮点值。追问

什么叫无符号10进制整数啊

第2个回答  2011-02-24
这个叫做格式化字符串
意思就是,遇到一个%N,那么就从后面的参数列中以%N为类型填到%N处。
%u 是表示无符号整型,你看看C语言书上都有的啊
第3个回答  2011-02-24
晕 什么叫无符号10进制整数,呵呵 兄弟 这个你还没整明白呢 你问输出语法干吗??这有点鼻涕倒流了
相似回答