运算问题
#include<stdio.h>int main()
{
int i = 8, j = 3;
i /= j + 12;
printf("%d", i);
return 0;
}
i /= j + 12
不应该是 i = i / j + 12
也就是8/3=2,然后2+12=14吗
为什么等于0啊? 肯定是(j+12)作为一个整体啊 mikele 发表于 2021-1-4 21:15
肯定是(j+12)作为一个整体啊
8/15=0,没问题啊
你干脆不要这么简写了,就直接写成i=i/j+12他不香吗{:10_334:} mikele 发表于 2021-1-4 21:16
8/15=0,没问题啊
你干脆不要这么简写了,就直接写成i=i/j+12他不香吗
我在做课后练习发现不对,然后自己没想明白就来问下,还有想问下
#include<stdio.h>
int main()
{
int a = 2, b = 5, c = 0;
double x = 1.2, y;
y=a=b=c=x=7.2;
printf("%lf", y);
return 0;
}
这个结果怎么是7
不应该是7.2嘛 mikele 发表于 2021-1-4 21:16
8/15=0,没问题啊
你干脆不要这么简写了,就直接写成i=i/j+12他不香吗
不对啊, 写成i=i/j+12
他的结果就成了14 1163028233 发表于 2021-1-4 21:24
我在做课后练习发现不对,然后自己没想明白就来问下,还有想问下
#include
int main()
依次赋值的话,你可以这样想#include<stdio.h>
int main()
{
int a = 2, b = 5, c = 0;
double x = 1.2, y;
x=7.2;
c=x;
b=c;
a=b;
y=a;
printf("%lf", y);
return 0;
}
因为a,b,c都是整型变量,所以c=x,y=a都是变成不带小数点的整型数据 1163028233 发表于 2021-1-4 21:27
不对啊, 写成i=i/j+12
他的结果就成了14
他要的答案就是14{:10_243:} mikele 发表于 2021-1-4 21:31
他要的答案就是14
那为什么这样写 i /= j + 12 程序出来的是0 而不是14
按书上讲的 i = i / j + 12和i /= j + 12这两个值应该相等啊? 1163028233 发表于 2021-1-4 21:37
那为什么这样写 i /= j + 12 程序出来的是0 而不是14
按书上讲的 i = i / j + 12和i /= j + 12 ...
第二种写法i/=j+12应该理解为i=i/(j+12),这里的j+12看作一个整体,也就是等号右边的是一个整体
第一种写法i=i/j+12就是字面意思 mikele 发表于 2021-1-4 21:40
第二种写法i/=j+12应该理解为i=i/(j+12),这里的j+12看作一个整体,也就是等号右边的是一个整体
第一种写 ...
明白了,谢谢
页:
[1]