一道C语言题目,渴望你的解答

来源:百度知道 编辑:UC知道 时间:2024/06/15 02:47:59
本人是C语言初学者,希望哪位朋友能为我解答下题目:
语句“printf("%d",(a=2)&&(b=-2));”的输出结果是:
我看了一下答案,可是不知道为什么是1。哪位朋友能告诉原理或者说解题的步骤呢?小女在此谢谢~!

printf("%d",(a=2)&&(b=-2))
=printf("%d",(2)&&(-2))
=printf("%d",True)
=printf("%d",1)
-> "1" (PRINT)

(a=2)&&(b=-2)的结果是真(True、1、非零),把它以%d的形式输入,就是以整型输出,为1

&&这个符号是逻辑且符号.

布尔型只有二个答案即1为真,0为假.

题中(a=2)&&(b=-2)二个条件的判断结果都为真

所以输出结果也为真即为1.

老大 PRINTF是输出好么,不存在判断问题