永发信息网

帮忙解释下这段程序(C语言)

答案:4  悬赏:80  手机版
解决时间 2021-07-20 05:00
main() {char ch; scanf("%c",&ch); ch=(ch>='A'&&ch<='Z')?(ch+32):ch; printf("%c\n",ch); } 输入一个字符,判别它是否大写,第四行我不怎么理解,大家帮帮忙啊!
最佳答案

这是把输入的大小字母变成小写字母。


ch=(ch>='A'&&ch<='Z')?(ch+32):ch;这是一个三元运算符,书有讲表达试那一章吧。


判断输入的字符是不是在大A与大Z之间。如是是就直接把ch赋给CH,如果不在就是把CH+32就变成了大字的字符了,在赋给CH;如同IF语句;


if(ch>='A'&&ch<='Z'){


ch=ch+32;//变成小字母


}else{


ch=ch;//这不变本来就是小字母。


}


不知道你懂了没。

全部回答

ch=(ch>='A'&&ch<='Z')?(ch+32):ch; 这个是二元运算符

就是如果问号前面为真(如果输入的字符在A--Z之间)就把ch+32得到的数值赋值给ch 如果为假就把ch赋值给ch然后输出

ch=(ch>='A'&&ch<='Z')?(ch+32):ch; //这行是一个条件选择语句,它的作用是判断ch中的字符如果是大写字母则转换成小写字母,不是则不转换.这个语句的另一个典型应用是:c=a>b?a:b,它的作用是将a和b中的较大的一个存入c中.
C语言中,字符的大小写,相差是32,比如,A和a,相差是32
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
为什么复印第一面正常,第二面颜色非常浅
滔滔怎样邀请啊?
初三上学期化学关于C的方程式
QQ游戏 下载打麻将
七年级新支点英语上册答案Unit3
哇嘎怎么下载不了资源,vagaa搜索不到资源还有
女生心思是不是很复杂?
术士人物好吗?
如果要在CF中查找一个人该怎么找
水浒传徐宁的主要事迹,时迁的绰号、性格、简
广州哪里有酷美媚这个牌子的鞋批发
梦幻西游120级的武器多少级能拿#24
丝路英雄联盟怎么退啊
甲乙两列火车从相距1620km的两城相对开出 经
关于炮头发型的问题
推荐资讯
深圳有哪些机票一级代理商
脚痒又起皮用什么药好?
手机QQ2009支不支持诺基亚5200?
比喻冬天好的句子,关于古诗词
吃什么可以有助于心脏病和胃病患者?
黄岛哪有泥塑工坊???
谁知道周传雄2010年新专辑什么时候出
我是1992年三月十九日生的帮我解一下我的事业
自由幻想结婚要多少钱
那里有windows 7 旗舰版 lenovo oem 64bit 版
QQ三国现在没上1个月还有齐心拿吗?
跪求这视频音乐哦42秒开始的那段音乐
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?