标题:求教:字母大小写转换
取消只看楼主
huang1982
Rank: 2
等 级:论坛游民
帖 子:25
专家分:29
注 册:2012-2-13
结帖率:100%
已结贴  问题点数:20 回复次数:2 
求教:字母大小写转换
# include <stdio.h>
int main(void)
{
    char ch;   
    scanf("%c", &ch);  
 
    if (ch>='A' && ch<='Z')  
        ch = (ch+32);
    if (ch>='a' && ch<='z')  //为什么这句换成 else if (ch>='a' && ch<='z') 输出结果就正确呢?
        ch = (ch-32);
  
    printf("%c\n", ch);  
    return 0;
}
输入 A 时,输出还是A,输入 a 时, 输出 A 就是对的。换成注释那行,输出的结果就是正确的~~为什么呢?

[ 本帖最后由 huang1982 于 2012-2-15 01:36 编辑 ]
搜索更多相关主题的帖子: void 字母 include 
2012-02-15 01:21
huang1982
Rank: 2
等 级:论坛游民
帖 子:25
专家分:29
注 册:2012-2-13
得分:0 
嗯,想了一下,这样是对的吧?
# include <stdio.h>
int main(void)
{
    char ch;   
    scanf("%c", &ch);   
    if (ch>='A' && ch<='Z')  
        ch = (ch+32);
    else
        ch = (ch-32);   
    printf("%c\n", ch);   
    return 0;
}
2012-02-15 01:34
huang1982
Rank: 2
等 级:论坛游民
帖 子:25
专家分:29
注 册:2012-2-13
得分:0 
回复 3楼 tt7721
嗯,谢谢了,初学,半夜有点迷糊了。
2012-02-15 10:25



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-360906-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.053492 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved