好的,继续c语言初级提问?

来源:百度知道 编辑:UC知道 时间:2024/05/16 12:28:30
帮我讲下这道C语言题,初级
悬赏分:10 - 离问题结束还有 14 天 23 小时
吧输入的字母,转换为小写字母。
main()
{ char ch;
scanf("%c",&ch);
ch>='A'&&ch=<='Z'?(ch+32):ch);
printf("%c",ch);
}
特别是ch>='A'&&ch=<='Z'?(ch+32):ch);这里有个条件

ch+32? 讲讲这个“ch+32”吧

你这是用字符输入
ASCⅡ码里十进制65-90是A-Z
97-122是a-z
65+32=97
所以 A+32=a
依此类推

ASC码 a是97 A是65 在这里是转为ASC码也就是数字运算的 所以加32

小写字母与相对应大写字母的ASCII数值间隔为32

小写字母的ascII码的值 要比对应大写字母的 大32
就是说
'a'-'A'=32
'b'-'B'=32
……