判断char型变量ch是否为大写字母的正确表达式是‘A’<=ch<=‘Z’ ,这个错在哪里

如题所述

正确的表达式是 ch>='A'&&ch<='Z'

char型数据是计算机编程语言中只可容纳单个字符的一种基本数据类型

取值范围:char : -2^7 ~ 2^7-1 ;signed char: -2^7 ~ 2^7-1;unsigned char : 0 ~ 2^8-1。

而且关于char还有一个特殊的语言就是char *,它在C/C++中有专门的语义,既不同于signed char *,也不同于unsigned char *,专门用于指以'\0'为结束的字符串



扩展资料:

char类型占1字节,就是8位,所能存储的正整数是 0111 1111,即127。如果将 int 型的整数i= 128 赋予ch,会产生溢出。

因128是 int 型,占 4 字节,二进制代码为 0000 0000 0000 0000 0000 0000 1000 0000.。若将它赋给一个只有8位的char 类型变量,只能将低8位的1000 0000 放进去,其他的都会被删掉。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-22
正确的表达式是
ch>='A'&&ch<='Z'追问

那上面那一个错在哪里

追答

A’<=ch<=‘Z’ 这个是数学范围知识,不能应用于计算机的领域。

追问

也就是说C语言里,不能采用连环不等式咯!像5<=x<=8都不能用吗

追答

对,要分开用。且用并集&&

追问

好的。明白了。你的这个想法可以保证正确率吗?我后天考试

追答

决对是正确的。

本回答被提问者采纳
第2个回答  2012-11-22
不能直接这么弄吧, 用正则判断好一些
相似回答