课程
/后端开发
/C
/C语言入门
我把"x+y=%d\n"改成"x+y=%f\n" ,其他没动,为什么结果显示0.000000,而不是7.000000呢?
2016-09-11
源自:C语言入门 3-2
正在回答
因为你前面是int x,y;所以x,y都是整型变量,得不出float
钢笔 提问者
不知道x,y是什么数据类型,语法规定低精度的数据类型不能自动转换成高精度的数据类型
算术具有封闭性,整型算法和float相冲突,你把后面的赋值语句x+y改成(float)(x+y),这样值就对了
举报
C语言入门视频教程,带你进入编程世界的必修课-C语言
6 回答#include <stdio.h> int main() { int a,s,d,f,g; a=x+y; s=x-y; d=x*y;f=x/y;g=x%y;printf("x+y=%d\n", a);printf("x-y=%d\n", s);printf("x*y=%d\n", d ); printf("x/y=%d\n", f);printf("x%y=%d\n", g);return 0;}
2 回答#include <stdio.h> int main() { int x,y; x = 10; y = -3; printf("x+y=%d\n", x+y ); printf("x-y=%d\n", x-y ); printf("x*y=%d\n", x*y ); printf("x/y=%d\n", x/y ); printf("x%y=%d\n", x%y ); return 0;
2 回答include <stdio.h> int main() { int x,y; x = 10; y = -3; printf("x+y=%d\n", x+y ); printf("x-y=%d\n", x-y ); printf("x*y=%d\n", x*y ); printf("x/y=%d\n", x/y ); printf("x%y=%d\n", x%y ); return 0;
1 回答 printf("x%%y=%d\n",x%y );与 printf("x%y=%d\n",x%y );
1 回答printf("x+y=%d\n",x+y);