define定义的问题
请问各位大佬 我这哪里出了问题 我研究好久 值出现都是1.85#include<stdio.h>
#define tomato 3.7 / 2
#define bba8 / 2
#define qaq 9 / 2
int main()
{
printf("小明要付%f元",tomato);
printf("小王要付%f元",bba);
printf("小紅要付%f元",qaq);
return 0;
}
两种方法
#include<stdio.h>
#define tomato 3.7 / 2
#define bba8 / 2.0
#define qaq 9 / 2.0
int main()
{
printf("小明要付%f元\n",tomato);
printf("小王要付%f元\n",bba);
printf("小紅要付%f元\n",qaq);
return 0;
}
#include<stdio.h>
#define tomato 3.7 / 2
#define bba8 / 2
#define qaq 9 / 2
int main()
{
printf("小明要付%f元\n",tomato);
printf("小王要付%d元\n",bba);
printf("小紅要付%d元\n",qaq);
return 0;
}
大马强 发表于 2022-3-1 16:45
两种方法
请问这是逻辑问题还是什么原因呢 为什么要 写成9/2.0 8/2.0 还有第二个方法 浮点数不是可以接受整数吗? kazuya8375 发表于 2022-3-1 16:49
请问这是逻辑问题还是什么原因呢 为什么要 写成9/2.0 8/2.0 还有第二个方法 浮点数不是可以接受整数吗?
整型数除法得到的结果一定是整型数,如果希望结果是浮点数,就得把其中的一个数表达为浮点数。 kazuya8375 发表于 2022-3-1 16:49
请问这是逻辑问题还是什么原因呢 为什么要 写成9/2.0 8/2.0 还有第二个方法 浮点数不是可以接受整数吗?
这就是c语言的隐式转换
页:
[1]