选择题
40.
有以下程序:
#include <stdio.h>
main()
{ char x='A';
x=(x>='A'&&x<='Z')?(x+32):x;
printf("%c<n",x);
程序的运行结果是______。
A、
A
B、
a
C、
Z
D、
z
【正确答案】
B
【答案解析】
因为在ASCII码中,大写比小写的码值刚好小32,比如'A'的ASCII码值是65,那么'a'的ASCII码值就是97。“x=(×>='A'&&x<='Z')?(x+32):x;”这句用了“?:”表达式,“A?B:C”就是问号前A部分为真时,表达式的值是B,否则表达式的值是C。这里“x>='A'&&x<='Z'”成立,所以表达式取“x+32”,所以x='A'+32='a'。因此,本题的正确答案为选项B。
提交答案
关闭