执行程序段 int a=5;a*=a/=a++;后,a的值是多少?
来源:百度知道 编辑:UC知道 时间:2024/05/15 16:15:42
结果是2。
因为机器分如下三步骤执行表达式的:
①a=a/5 执行后a=1
②a=a*a 执行后a=1
③a++ 执行后a=2
你可以用下面这样简单的程序上机验证:
main(){
int a=5;a*=a/=a++;
printf("%d\n",a);
}
5
int a=5;a*=a/=a++;
即result *= expression,将第一个等号之后看成expression,故先执行第一个等号后面的内容。
现在看a/=a++;将a++看成expression。
设j = a++;在此,因为递增发生在表达式被求值后,所以值 a=5 直接赋给了j,而不会让j=6(j=++a才会让j=6)。这样由a/=5得到a=1;再由a*=1,得到a=5
我是用javascript来做的,不知道答案是否有出入。
执行程序段 int a=5;a*=a/=a++;后,a的值是多少?
C语言:int a=2; a+=a-=a*a 执行后.......
C语言:int a=12; a+=a-=a*a 执行后..得到多少???...
请问:执行int a=4; (++a)+=a;之后,a值是多少?为什么??
设a = 5,b = 10,则执行 c = Int((b - a) * Rnd + a) + 1,结果为多少
程序段如下:int a[10];int *p;p=a;则程序中的指针变量p的指向地址是:
设有语句int a=3;则执行了语句a+=a-=a*a;后变量a是多少?
设有语句 int a = 3; 执行语句 a+=a-=a*a;后,变量a的值是多少?
int a=6; 则执行a+=a-=a*a;语句后,a的值为
int a=5,b; b=++a*--a;