为什么在宏定义里运算后得出的结果是错的
本帖最后由 落叶L 于 2022-8-1 21:24 编辑#include<stdio.h>
#define N 3.7/2
#define M 8/2
#define X 9/2
int main()
{
printf(“%.2f”, (N*2+M+X));
return 0;
} 9/2=4? 不是4.5? 本帖最后由 落叶L 于 2022-8-1 21:25 编辑
打印结果是11.70 落叶L 发表于 2022-8-1 21:22
打印结果是11.70
3.7+4+4没毛病 本帖最后由 落叶L 于 2022-8-1 21:28 编辑
wp231957 发表于 2022-8-1 21:16
9/2=4? 不是4.5?
对呀,是9/2出问题了吗,为什么是4不是4.5,不知道为什么结果是11.70 落叶L 发表于 2022-8-1 21:27
对呀,是9/2出问题了吗,不知道为什么结果是11.70
c语言里,两个整数相除,结果一定是整数ok?? wp231957 发表于 2022-8-1 21:27
3.7+4+4没毛病
我懂了,整形的运算得到的也是整形,谢谢啦^_^
页:
[1]