问一下
#include<stdio.h>
void main
{
int a,b,c;
a=b=c=10;
a+=c;
b*=c;
printf("a=%d,b=%d,c=%d\n",a,b,c);
}
为什么答案是a=10,b=25,c=5呢
而不是a=20,b=100,c=10呢
为什么答案是a=10,b=25,c=5呢
而不是a=20,b=100,c=10呢
首先第4行声明了3个int类型变量;
第5行a=b=c=10;这样子写的话a,b,c的值都是10了
第6行a += c; 其实等价于 a = a + c; 所以 a = 20;
第7行 b *= c; 等价于 b = b * c; 所以 b = 100
a = 20; b =100; c =10
由此可见答案是不对的哦。
有时候答案不一定是对的哦!!
追问那谢谢了 自学的 结果这本书弄得我好尴尬
意思是后面那个答案才是对的吗?
追答是的,代码(修正明显错误后)的正确执行结果是:
a=20,b=100,c=10