首页 > 试题广场 >

执行c程序代码“int a=1; int b=0; int

[单选题]
执行c程序代码
int a = 1;
int b = 0; 
int c = 0; 
int d = (++a) * (c = 1);
a,b,c,d的值分别为()。
  • 2,0,1,2
  • 1,0,1,1
  • 2,0,1,1
  • 2,0,0,2
推荐
答案:A
首先定义int a=1; int b=0; int c=0;,此时a=1,b=0,c=0
int d=(++a)*(c=1);在定义d时,++a使得变为2,后面括号c=1表达式使得c=1
d=2*1=2
编辑于 2015-01-17 11:31:02 回复(0)
答案 A
基础题, 不解释
发表于 2015-01-13 12:21:24 回复(0)
注意(c=1)是一个表达式,让c的值为1,而整个()内的值为真,从而为1.
发表于 2016-05-23 16:45:49 回复(3)
        知道还好,不知道真的会卡半天,int d=(++a)*(c=1);里面的(c=1)是一个表达式,先将c的值赋为1,所以(  )表达式为真(c非0),所以(c=1)为1。
发表于 2017-05-05 20:33:47 回复(0)

注意:d的表达式里面(c=1)绝不是返回表达式的真假!其实就是返回c的值!看下面代码:
图片说明

发表于 2018-05-27 20:58:47 回复(3)
A
这个是基础的运算 ,++a.a先加1再使用,a++,a先使用再加1
发表于 2016-01-08 21:07:02 回复(0)
c==1与c=1不一样
发表于 2023-03-24 10:54:15 回复(0)
运算符
发表于 2019-02-23 18:59:33 回复(0)
A
基础题
发表于 2015-01-27 13:38:47 回复(0)
A
a=2
b=0
c=1
d=2
发表于 2015-01-26 20:59:49 回复(0)