巨人用脚踩踩死小人:c的一个题

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/08 14:30:21
int i;
i = 2.5;
print("%f",i);
的结果????????
float i;
i = 2;
print("%f",i);
的结果????
float i;
i = 2;
print("%d",i);
的结果????
没有给个解释的吗?

int i;
i = 2.5; 给整型赋了个非整型值i=2
print("%f",i); 而输出时又要以浮点型打印,内存中不存在浮点型数,出错,当然程序是自检不出这样的错误的.在输出界面显示:floating point formats not linked.(找不到相应值.)另外,C中,高级数型能向低级数型过渡,如double-float-int,但返过来就不行,会出错.

float i;
i = 2;
print("%f",i); 2.000000 这不用解释了,肯定在2后补6个零的.

float i;
i = 2;
print("%d",i); 0 高级数型能向低级数型过渡.

分值少,保留意见.^_^

2.000000
2.000000
2

2.000000 因为i是整型,所以是2,不论显示多少位都是2
2.000000 本来就是2 只是多显示小数位而已
2 整型

0.000000
2.000000
0