ch!=(ch>='A'&&ch<='z')?ch:(ch+32)。结果是A。求解释。
你给ch赋初值了么?初值是什么ch的值就是什么,因为你用"!"把后面的东西都否定了,所以当你写后面的语句的时候ch初值是什么就会输出什么。
ch!=(ch>='A'&&ch<='z')?ch:(ch+32)。结果是A。求解释。
!=的右边是:ch>='A'&&ch<='Z')?ch:(ch+32)这个条件运算符的意思是:如果ch是大写字母,则不变,否则在ASCII码上 +32 而 ch!=(ch>='A'&&ch<='z')?ch:(ch+32)是一个关系表达式,关系表达式的结果 只有true和false 你说结果是A,是说 ch的值 是A 呢,还是 说其他的?如果ch的值...
ch=(ch>='A'&&ch<='Z')?ch+32:ch;
语句首先执行括号中的表达式,即:ch>='A'&&ch<='Z',然后根据逻辑与的结果,分别执行:a.如果为真,即ch是大写字母字符,那么执行ch+32,根据ASCII码表,知道大写字母字符的值加上32,即是小写字母字符的ASCII值,所以就完成对大写到小写的转换 b.如果为假,即ch不是大写字母字符,那么保持ch的值...
C语言中的这句话是什么意思“ch=(ch>='A' && ch<='z'# ? #ch+32#...
语句首先执行括号中的表达式,即:ch>='A'&&ch<='Z',然后根据逻辑与的结果,分别执行:a.如果为真,即ch是大写字母字符,那么执行ch+32,根据ASCII码表,知道大写字母字符的值加上32,即是小写字母字符的ASCII值,所以就完成对大写到小写的转换 b.如果为假,即ch不是大写字母字符,那么保持ch的值...
...ch!=(ch>='A'&&ch<='Z')?(ch+32):ch最后的结果是什么?
)?(ch+32):ch;相当于:ch!= ((ch>='A'&&ch<='Z')?(ch+32):ch)先算(ch>='A'&&ch<='Z')?(ch+32):ch ch = 'M',满足条件ch>='A'&&ch<='Z',则ch+32作为该判断的右值。现在,表达式简化如下 ch != ch + 32;成立,所以值为 1;ch + 32 实际上是小写字母 'm'...
C语言中,ch=(ch>='A'&&ch<='z'?ch:(ch+32))
ch>='A'&&ch<='z'就是说ch是个英文字母,连起来就是说如果ch是字母,则保持不变,否则ascii值加上32,你看下ascii码表就知道了,比如字符'0',十进制是48,加上32就是80也就是字符'P'...
C语言 ch=(ch>='A'&& ch<='Z')? ch:(ch-32) 这一句中 ? ch:(ch-32...
A?B:C 这是一个条件运算符的用法,如果A成立则返回B,否则返回C 你这里就是 如果ch是'A'到'Z'之间的大写字母,就返回ch本身;否则返回ch-32(此时ch为小写字母,每个字母对应的小写字母的ASCII码比大些字母的ASCII码要大32,可以查看ASCII码表,ch-32就把小写字母变换成对应的大写字母了,当然你...
设ch是char型变量,下列表达式ch=(ch>='A'&&ch<='Z'?(ch+32):ch的...
如果ch是大写字母的话就执行(ch+32)这条语句,将ch加上32转换成小写字母。否则执行把ch赋值给ch,也就是不变。整个语句的意思就是讲ch变成小写字母再赋值给它。讲解得应该能懂吧。。。
设ch=‘A’,则下面的表达式值为 ch=!(ch>='A'&&ch<='Z')?ch:(ch+...
ch=!(ch>='A'&&ch<='Z')?ch:(ch+32)先计算括号里的,再和 ! 结合作逻辑非运算,其结果决定后面冒号左右两个值中哪个作为整个表达式的值赋给ch
设ch是char型变量,其值为A,则表达式ch=(ch>='A'&&ch<='Z')?(ch+32...
如果真,则返回:前的值,否则返回:后的值。这句话的意思是:if(ch>='a'&&ch<'z)ch=ch-'a'+'a';else ch=ch;因为ch='a';所以表达式为真,则ch=ch-'a'+'a';字符在内容中是以ascii保存的,所以和int型一样支持基本运算,所以ch='a'-'a'+'a';最终ch='a';...