【main() {int a=10 ,b=0; if(a=12) {a=a+1; b=b+1;】
答案:2 悬赏:0 手机版
解决时间 2021-03-04 15:30
- 提问者网友:未信
- 2021-03-04 12:40
【main() {int a=10 ,b=0; if(a=12) {a=a+1; b=b+1;】
最佳答案
- 五星知识达人网友:夜余生
- 2021-03-04 13:04
你写的中间符号有很多错误,不知是打错还是那里就写错了======以下答案可供参考======供参考答案1:if(a=12)这是个赋值语句,左值和右值都符合要求,所以if判断为真,并且执行了里面的赋值。既然if为真那么else就为假。就只执行printf了供参考答案2:这里,if(a=12)是用如果的语气,是假设的,而原来应该等于10,所以这个假设可以成立(你假设它不是10二十12)。所以执行 if(a=12) {a=a+1; b=b+1;} 这里有一道类似题目:程序段int a=0,y=10;if(a=0)y--;else if (a》0)y++;else y+=y;程序运行结果?答案是:20int a=0,y=10;if(a=0)y--;//a=0是先给a赋值为0再判断,这里的 a为0了if(a)就是假的,不成立else if (a>0)//继续判断 a>0 上面已经能 a赋值为0,这里也不成立y++;else y+=y;//做这一步了,y=y+y=20所以a的值是0,y的值是20这样讲明白了吗?供参考答案3:因为你的if语句里的是赋值语句不是判断语句。即你把12的值赋给a,而不是判断a是否等于12。供参考答案4:if(a=12)//将12赋值给a,此时a = 12,表达式为真所以执行if内的语句,a = 12 + 1 = 13{a=a+1; b=b+1;} else {a=a+4; b=b+4 }
全部回答
- 1楼网友:狂恋
- 2021-03-04 14:21
回答的不错
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯