宋茜starking百度云:c语言问题

来源:百度文库 编辑:高校问答 时间:2024/05/06 13:58:46
#include<stdio.h>
void main()
{
int c=35;
printf("%d\n",c&&c);

}
为什么答案会是1,不明白

C && C
是个条件表达式,值域为TRUE或FALSE,即1或0;
而参与运算的变量,只要非0,就是TRUE,即1;
So结果会是1,即TRUE && TRUE = TRUE

c=35不为零,其值为真(1),&&在两边都是真得时候返回一个真值,所以c&&c的值为真,即1

对对对,就是这么回事,没想到想说的都被你说了。

C&&C如果换成C或其它的变量的话,prinf会找到相关的变量并显示其值。如果是常数就直接显示。
C&&C 在这里就是个1 所以就显示出来了。
再如 printf("%d\n",2); 结果是2