滑盖棺材板 发表于 2020-2-6 14:48:05

求助,小甲鱼while语句的作业

本帖最后由 滑盖棺材板 于 2020-2-6 14:47 编辑

输入英文,更改大小写然后输出

#include<stdio.h>

int main()
{
       
        int ch;
       
        printf("请输入一行英文句子 :");
       
       
        while ((ch = getchar()) != '\n')
        {
                if(ch >= 'A' && ch <= 'Z')
                {
                  ch = ch - 'A' + 'a';
                  // ch = 'ch' + 32;
           }
                else if(ch >= 'a'&& ch <= 'z')
                {
                  ch = ch - 'a' + 'A';
          }
          putchar(ch);
        }
        putchar('\n');
       
        return 0;
}

里面的15、16行里面为什么ch = ch - 'A' + 'a';输出是对的,
ch = 'ch' + 32;就输出不成呢

zltzlt 发表于 2020-2-6 14:49:00

应该是 ch = ch + 32;,不要双引号

mie168 发表于 2020-2-6 15:55:52

ch = 'ch' + 32我听了好几节课,我个人也是这么认为,字符串应该是不可以单独加数值的吧!

正确的应该是 ch = ch + 32

mie168 发表于 2020-2-6 16:04:44

代码改正过来之后运行出错呢?

invalid syntax 出现这样的报错提示呢?

滑盖棺材板 发表于 2020-2-6 17:43:30

mie168 发表于 2020-2-6 15:55
ch = 'ch' + 32我听了好几节课,我个人也是这么认为,字符串应该是不可以单独加数值的吧!

正确的应该是 ...

是的是的{:5_108:}应该是没有单引号的,晕了晕了^-^

hyontheway607 发表于 2020-2-6 22:09:17

我爱鱼C
页: [1]
查看完整版本: 求助,小甲鱼while语句的作业