为什么输出结果是yes?
谢谢了。
void main() { char ch='A'; if('a'<=ch<='z') printf("yes&quo
答案:2 悬赏:30 手机版
解决时间 2021-03-05 12:28
- 提问者网友:城市野鹿
- 2021-03-05 05:07
最佳答案
- 五星知识达人网友:野慌
- 2021-03-05 06:36
肯定是yes了
根据你的判断条件if (‘0’<=ch <=’9’),那无论c是什么值,这个判断都是真,(('0’<=ch <=’9’)是这样判断的:先判断'0'<=c是否为真,然后把这个判断结果和'9'比较,那无非就是0<='9'或者1<='9',都是真) 所以始终输出yes
要达到你的本意不能用数学上的表达式方式,而是这样 if('0'<=c&&c<='9'),这样的话输出就是no了
根据你的判断条件if (‘0’<=ch <=’9’),那无论c是什么值,这个判断都是真,(('0’<=ch <=’9’)是这样判断的:先判断'0'<=c是否为真,然后把这个判断结果和'9'比较,那无非就是0<='9'或者1<='9',都是真) 所以始终输出yes
要达到你的本意不能用数学上的表达式方式,而是这样 if('0'<=c&&c<='9'),这样的话输出就是no了
全部回答
- 1楼网友:廢物販賣機
- 2021-03-05 07:55
打印结果是小写a。
ch=‘a’ 满足条件 ch>='a'&&ch<='z' 所以打印 ch+32,
ch的值是'a',ascii值65, 65+32 = 97 ,ascii值为97的字符是 'a'
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯