(7) 有如下程序段
int a=14,b=15,x;
char c=’A’;
x=(a&&b)&&(c<’B’);
执行该程序段后,x的值为( )
A} ture B} false C} 0 D} 1 答案是D。请说明一下
céé¢é0æ´æ°å½ä½trueå¤çã
æ以a&&b=true
âAâ<'B'æ以c<'B为true
æ以(a&&b)&&(c<âBâ)为trueã
true转æ¢ä¸ºintçæ¶åï¼ä½ çç¼è¯å¨å¯è½è½¬æ¢ä¸º1äºã
ï¼è¡¥å ï¼intä¸booleanç转æ¢å ³ç³»ï¼è¦çç¼è¯å¨ç约å®ï¼ä¸åçç¼è¯å¨ä¸ç»æå¯è½ä¸ä¸æ ·ï¼
æ以a&&b=true
âAâ<'B'æ以c<'B为true
æ以(a&&b)&&(c<âBâ)为trueã
true转æ¢ä¸ºintçæ¶åï¼ä½ çç¼è¯å¨å¯è½è½¬æ¢ä¸º1äºã
ï¼è¡¥å ï¼intä¸booleanç转æ¢å ³ç³»ï¼è¦çç¼è¯å¨ç约å®ï¼ä¸åçç¼è¯å¨ä¸ç»æå¯è½ä¸ä¸æ ·ï¼
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-09-12
&&是逻辑运算符,运算结果是true或者false,其意义是计算结果是真还是假。a&&b的意思是:(a>0)&&(b>0),这个运算结果明显是true,c<'B'的运算结果明显也是true('A'的ASCII码值小于'B'的ASCII码值)。所以(a&&b)&&(c<'B')的运算结果是true。但是你要注意,x的类型时int。当将true赋值给x的时候,编译器会把布尔型的变量true转化成整型变量1。所以最后的结果是D.
第2个回答 2013-09-12
&&因为这个符号的意思是 当a和b都大于0的话就为真,就表示为1;例如:int a=14,b=13;a&&b;就为真 就为1,假就为 0;如:int a=3,b= -3的话就为假 就为0;所以如此.
第3个回答 2013-09-12
?简单啊a&&b是真 因为a和b都不等于0c<"B"是真 前后都为真 所以x也为真因为x是int型变量 所以x=1
第4个回答 2020-02-24
0)&&(b>的ASCII码值小于'B'的ASCII码值)。所以(a&&b)&&(c<')的运算结果是true:(a>,运算结果是true或者false,其意义是计算结果是真还是假。a&&b的意思是,编译器会把布尔型的变量true转化成整型变量1;A'B'0),这个运算结果明显是true,c<'B'的运算结果明显也是true('。所以最后的结果是D。但是你要注意,x的类型时int。当将true赋值给x的时候&&是逻辑运算符