[简单]printf产生的问题
请看如下这段程序,本来以为很简单。。。可是结果却和想象中有些不同。。。
#include <stdio.h>
void main()
{
float a=11;
a = a/2;
printf("%d , %f\n",a,a);
printf("%f , %d\n",a,a);
printf("%d\n",a);
printf("%f\n",a);
}
====================================
0 , 0.000000
5.500000 , 0
0
5.500000
Press any key to continue
====================================
问题:
1.为什么第一行输出时,结果都是0?
2.为什么更换了%f和%d的顺序,%f可以正常显示?为什么%d还是0呢?
3.我看以前有人说是逗号表达式。。所以我分开输出了。。。为什么%d还是输出0??(我以为%d会显示5地说。。。)
====================================
我的环境VC6.0+WinXP SP2....我把11和2改成11.0和2.0。。输出结果也是一样的。。