#include<stdio.h>
void main()
{
float a;
int b;
b=1;
a=4.5;
printf("b=%f,a=%d\n",b,a);
}
我不是问这程序怎么改,是问为什么会这样,原因啊各位
printf("b=%f,a=%d\n", (float)b, (int)a);
原因很简单,格式串中的 %f 要求对应的参数必须是浮点型,否则输出就不正确。
你已经看到了,输出是 b=0.000000,不正确吧?
整型数据调为浮点型必须使用 (float)b,而不是改一下格式串为 %f 就能做到的。
温馨提示:答案为网友推荐,仅供参考