为了账号安全,请及时绑定邮箱和手机立即绑定

判断对错的题输出了2个数

 printf("z是否等于x+y:%d\n",z=x+y); 

        //z是否等于x+y

真正输出结果为:z是否等于x+y:10。出来两个数,1和0,这是为什么。

正在回答

3 回答

z=x+y 是个运算式,相当于把x+y的值赋予z 实际printf输出的是z的值。 如果要判断是否相等 用==来判断 1个=号是赋值,2个=号是比较

0 回复 有任何疑惑可以回复我~
#1

qq_渔単曲_0 提问者

非常感谢!
2017-04-07 回复 有任何疑惑可以回复我~

如果要得到10,就写:printf("z是否等于x+y:%d\n",x+y);

0 回复 有任何疑惑可以回复我~

那个10是x + y的结果,是一个数,不是两个数,"=="表示逻辑判断,语句返回值是1 或0.而"="表示赋值,你写的是赋值语句,而不是题目要求的逻辑判断语句,所以不对

0 回复 有任何疑惑可以回复我~
#1

qq_渔単曲_0 提问者

非常感谢
2017-04-07 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

判断对错的题输出了2个数

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信