6个回答
展开全部
这条语句是实现把一个字母字符转换成小写形式
赋值语句右边是一个"X?A:B"条件判断运算符
运行形式为如果X为真,那么执行A,否则执行B
语句首先执行括号中的表达式,即:
ch>='A'&&ch<='Z',然后根据逻辑与的结果,分别执行:
a.如果为真,即ch是大写字母字符,那么执行ch+32,根据ASCII码表,知道大写字母字符的值加上32,即是小写字母字符的ASCII值,所以就完成对大写到小写的转换
b.如果为假,即ch不是大写字母字符,那么保持ch的值不变
最后,把转换后的值重新赋值给ch,完成转换
赋值语句右边是一个"X?A:B"条件判断运算符
运行形式为如果X为真,那么执行A,否则执行B
语句首先执行括号中的表达式,即:
ch>='A'&&ch<='Z',然后根据逻辑与的结果,分别执行:
a.如果为真,即ch是大写字母字符,那么执行ch+32,根据ASCII码表,知道大写字母字符的值加上32,即是小写字母字符的ASCII值,所以就完成对大写到小写的转换
b.如果为假,即ch不是大写字母字符,那么保持ch的值不变
最后,把转换后的值重新赋值给ch,完成转换
展开全部
字母ABCDE...XYZ的ASCII值是连续变化,从'A'变到'Z'。
小写字母的ASCII值比大写字母大 32
ch>='A'&&ch<='Z' 说 如果 ch 的 值 在'A'到'Z'范围,它是大写字母。
则 ch = ch+32 -- 变小写
否则 :ch -- ch=ch 不变
小写字母的ASCII值比大写字母大 32
ch>='A'&&ch<='Z' 说 如果 ch 的 值 在'A'到'Z'范围,它是大写字母。
则 ch = ch+32 -- 变小写
否则 :ch -- ch=ch 不变
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
(ch>='A'&&ch<='Z') 判断ch的ascii是否在'A'的ascii值和'Z'的ascii码值之间, 也就是判断ch是否是一个大写的英文字符。
如果是ch+32, 转换成对应的小写字符。 大小写字符的ascii值相差32。
否则,保持ch不变。
如果是ch+32, 转换成对应的小写字符。 大小写字符的ascii值相差32。
否则,保持ch不变。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2008-04-04
展开全部
这个表达式等价于:
ch= ( (ch>='A'&&ch<='Z')?ch+32:ch );
后面的条件表达式使得这个语句相当于下面的if语句:
if (ch>='A'&&ch<='Z) ch=ch+32;
else ch=ch;
如果ch保存的是一个大写字母,则转换为对应的小写字母,否则保留原值。
ch= ( (ch>='A'&&ch<='Z')?ch+32:ch );
后面的条件表达式使得这个语句相当于下面的if语句:
if (ch>='A'&&ch<='Z) ch=ch+32;
else ch=ch;
如果ch保存的是一个大写字母,则转换为对应的小写字母,否则保留原值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ch=(ch>='A'&&ch<='Z')?ch+32:ch;
意思是如果字符ch在A到Z中间,该字符就加32,否则就是他本身
这个是用来把所有字符都变成小写字符的
意思是如果字符ch在A到Z中间,该字符就加32,否则就是他本身
这个是用来把所有字符都变成小写字符的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询