C语言程序设计字符串大小写转换

img

#include<stdio.h>
int main()
{
char ch;
printf("请输入由英文字母组成的文本\n");
while((ch=getchar())!='\n')
{
if(ch>='A'&&ch<='Z')
{
ch+=32;
}
else if(ch>='a'&&ch<='z')
{
ch-=32;
}
printf("%c",ch);
}
printf("\n");
return 0;
}
求解 这是怎么回事呢

你截图的代码中while()括号中的内容跟下面贴的不一致。

#include<stdio.h>
int main()
{
    char ch;
    printf("请输入由英文字母组成的文本\n");
    while((ch=getchar())!='\n') //注意,这里 ch=getchar()需要用()括起来
    {
        if(ch>='A'&&ch<='Z')
        {
            ch+=32;
        }
        else if(ch>='a'&&ch<='z')
        {
            ch-=32;
        }
        printf("%c",ch);
    }
    printf("\n");
    return 0;
}

我运行了下没问题。