C语言中"%X,%O"输出是什么?
main()
{
char ch;
int a;
ch='a';
printf("%x,%o",ch,ch)
}
输出结果是什么? "%x,%o" 是什么意思??
还有
main()
{
float b;
b=9.5;
printf("b=%4.2f\n",b);
}
中的 b=%4.2f 是什么?是规定精度吗?那是怎么规定的? 展开
用在scanf函数中,"%X,%O"表示%X对应的第一个变量接收一个十六进制数,再接收一个逗号不赋给任何变量,最后接收一个八进制数赋给%O对应的变量。字母大小写均可。
用在printf函数中,"%X,%O"中的%O控制符是错误的,因为有的编译器只认%o不认%O,就是说在printf中是分大小写的。%X对应输出大写字母的十六进制数,%x对应输出小写字母十六进制数;中间逗号照搬输出,%o对应输出八进制数。
扩展资料
1、这一类符号是“格式说明”
2、用于格式输入与格式输出,就是我们常见的printf和scanf函数中在输入输出时,对不同类型的数据(如int,float,char等)要使用不同的格式说明。
(1)%d,用来输出十进制整数。
(2)%f,用来输出实数(包括单,双精度),以小数形式输出。
(3)%c,用来输出一个字符。
(4)%s,用来输出一个字符串。
C语言中%X的意思是以十六进制数形式输出整数,类似%x的输出格式还有:
1.%c:单个字符
2.%d:十进制整数
3.%f :十进制浮点数
4.%o:八进制数
5. %s :字符串
6.%u:无符号十进制数
7.%%:输出百分号%
用在scanf函数中,"%X,%O"表示%X对应的第一个变量接收一个十六进制数,再接收一个逗号不赋给任何变量,最后接收一个八进制数赋给%O对应的变量。字母大小写均可。
用在printf函数中,"%X,%O"中的%O控制符是错误的,因为有的编译器只认%o不认%O,就是说在printf中是分大小写的。%X对应输出大写字母的十六进制数,%x对应输出小写字母十六进制数;中间逗号照搬输出,%o对应输出八进制数。
%mf中的m为指定输出字段的宽度.如果数据的位数小于m,则左端补以空格,若大于m则按实际位数输出!
其他的的输出格式符都可以这么用:%d,%c....
%o 格式化为8进制的字符串
%4.2f 格式化浮点数为宽度为4保留小数点2为的字符串
见MSDN printf函数说明