若变两已正确定义,表达式(j=3,j )的值是
来源:学生作业帮助网 编辑:作业帮 时间:2024/09/25 20:22:15
1.B2.D3.C4.D5.A6.C7.C8.D9.C10.B11.D12.C13.A14.C15.A16.B17.C
A:c语言不可以这样赋值B:因该是这样:(int)15.8%5C:正确,逗号运算符D:求余的,被除数只能是整数----个人观点
B原表达式中i==0和j==0都必须为真才成立.B中!i和!j都必须为真,而i==0在i为零时为真,!i也是i为零是为真.这就是许多人喜欢把if(a==0)写成if(!a)的原因.a==0和!a是等价
j=6k=7谭浩强的老生常谈问题了
++j表示j先自加,然后返回j,此时j=4,(++j)的值为4j++表示返回j后自加,此时j=4,(j++)的值为4所以表达式的值为8,表达式算完之后,j=5
对于逗号表达式,其整个表达式的值为最后一个表达式的值,所以(j=3,j++)表达式的值最后就是j++的值,因为j++是先返回j的值然后j累加1,所以最后(j=3,j++)的值是3,但是j是4.
结果为8;具体可以分为下面的步骤:k=k+(i>j?i++:--j);首先判断i是否大于j,即(i>j?i++:--j),因为这里i和j相等,所以这里的结果为--j,即(i>j?i++:--j)=--
选Bi+j=2+5=7k-j=8-5=37
先执行(i=1,1+9)>9,()表达式的值,是()内最右边式子的结果,所以是10,10>9,所以第2步是执行i++||++i.因为之前已执行了i=1,所以i++的取值是1,取值后将i变成
不正确,i+++++j,被识别为i+++++j,而i++不是左值,所以这个表达式是不正确的.若要表达(i++)+(++j),需要写成i+++++j.
x=(i+1,j+1,(++i+(j--));相当于y=i+1;//对表达式取值没有影响的计算z=j+1;//对表达式取值没有影响的计算i++;//i=3x=i+j;//x=8j--;//对表达式取值
等于3++i的值等于i+1之后的值即++i=3,i=3i++的值等于i的值为3
表达式(j=3,j++)的值为3,j=4
表达式分为左值和右值你这个表达是自己定义的吧再问:就是问这个式子是错在哪再答:y*5叫做表达式,x叫做变量。等号左边只能写变量,不能写表达式。错在第二个等号的左边,不应该是一个表达式(y*5),而应该
表达式的值就是逗号运算符最右边的值最后结果是k=4j=5再问:初学者,不太明白,嘻嘻。。。j为什么是5呢?中间两个要不要算的?再答:(j=3,j+2,++j,j++)括号里的这些表达式都是有效的j=3
这个是等于3啦.这里涉及到运算符优先级的问题,++运算符优先级高于+运算符,这样就可以看成(i++)+j;i++表示先使用在自加.
(j=1,++j)的值为2