
关于C语言的题目求解
main(){inti=-2;floatx=457.898;printf("i=%5d,%-8o,%3x,%u,%c\n",i,i,i,i,i+'E');printf("...
main()
{int i=-2;
float x=457.898;
printf("i=%5d,%-8o,%3x,%u,%c\n",i,i,i,i,i+'E');
printf("x=%10f,%10.2f,%-10.4f,%.2f,%f\n",x,x,x,x,x);}
各个答案是怎样出来的,求解!谢谢! 展开
{int i=-2;
float x=457.898;
printf("i=%5d,%-8o,%3x,%u,%c\n",i,i,i,i,i+'E');
printf("x=%10f,%10.2f,%-10.4f,%.2f,%f\n",x,x,x,x,x);}
各个答案是怎样出来的,求解!谢谢! 展开
2个回答
展开全部
printf()括号里面有两个东西,一个是" "即左边引号部分,和右边的那些,引号里面是原样输出的意思,但在这里面有%d,%o,这种的就是一些占位符,就是占住一个位,而值是在后面的那些i,x之类的参数的值。
而%5d,中间的数字5就是占住的这个位置的长度。
而%-8o,中的-号是指占住8个位置后左对齐。
接下来是%d是值后面的i,x之类的参数的值的格式。d是十进制形式。
%o o是八进制的形式
%x x是十六进制的形式
%u u是无符号数的形式
%c c是单个字符形式
%f f是输出浮点型数
而%5d,中间的数字5就是占住的这个位置的长度。
而%-8o,中的-号是指占住8个位置后左对齐。
接下来是%d是值后面的i,x之类的参数的值的格式。d是十进制形式。
%o o是八进制的形式
%x x是十六进制的形式
%u u是无符号数的形式
%c c是单个字符形式
%f f是输出浮点型数
追问
但是那个 37777777777776 fffffffe 这些怎样算都算不到这个答案
追答
因为-2的要以八进制数输出,所以从十进制的-2转换成37777777777776。
而以十六进制输出,就是fffffffe了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询