问题
单项选择题
已知字母A的ASCII码值为65,若变量kk为char型,以下不能正确判断出kk中的值为大写字母的表达式是( )。
A.kk>='A'&&kk<='Z'
B.!(kk)='A'||kk<='Z')
C.(kk+32)>='a'&&(kk+32)<='z'
D.isalpha(kk)&&(kk<91)
答案
参考答案:B
解析: 本题主要考查的是逻辑表达式。选项A)中的表达式的意思是kk大于等于'A'且小于等于'Z',因此只有当kk是一个大写字母的时候,该表达式才能被满足,所以选项A)能够判断出kk中的值为大写字母。我们知道(kk+32))>='a'等价于kk>='a'-32,又因为相同的大小写字母的ASCII码值,小写字母的要比大写字母大32。所以'a'-32等于'A'。故选项C)和选项A)是等价的。。isaipha()函数的功能是判断一个参数是否为字母。又因为小写字母的ASCII码值范围是97~122,大写字母的.ASCII码值范围是65~90,当判断是字母且值小于91时一定是大写字母,所以选项D)能够判断出kk中的值为大写字母。