单选题
有以下程序:
#include<stdio.h>
main()
{char X="A";
x=(x>="A"&&x<="Z")?(x+32):x;
printf("%c/n", x);
}
程序的输出结果是______。
【正确答案】
B
【答案解析】[解析] 因为在ASCII码中,它的大写比小写刚好小32,比如"A"的ASCII是65,那么"a"的ASCII就是97。x=(x>="A"&&x<="Z")?(x+32):x;这句用了?:表达式,A?B:C就是问号前A部分为真时,表达式的值是B,否则表达式的值是C。这里(x>="A"&&x<="Z")成立,所以表达式取(x+32),所以x="A"+32="a"。因此正确答案为B。