问答详情
源自:3-2 算术运算符

关于整数与非整数混合运算的问题

将一个赋值为2的int与一个赋值为2.5的float相加,结果分别赋值给一个int和一个float

输出结果为什么是“4,0”?

或者是编译出现了问题?

#include <stdio.h>

int main()

{

int a=2;

float b=2.5;

int c=a+b;

float d=a+b;

printf("%d\n%d",c,d);

getchar();

return 0;

}


提问者:maxwell_212 2019-07-13 22:12

个回答

  • qq_慕娘8465888
    2019-07-14 09:42:32
    已采纳

    printf("%d\n%d",c,d)因为你这里用的是d对应的%d是整型的,输出后自然是整数喽,要输出d=多少要是小数的形式应该改成这样printf("%d,%f\n",c,d);