fuze11 发表于 2020-4-26 11:23:00

求大神看看我怎么没有输出呢

#include <stdio.h>
main()
{
        int ch;
        printf("&Ccedil;&euml;&Ecirc;&auml;&Egrave;&euml;");
       
        while ((ch = getchar()) == ' ')
      
        {
               if (ch >= 'A' && ch <= 'Z')
                {
                        ch = ch - 'A' + 'a';
               
                }
               
                else if (ch >= 'a' && ch <= 'z')
                {
                        ch = ch - 'a' + 'A';
                       
                }
                putchar(ch);
        }
        putchar('\n');
}

悠悠2264 发表于 2020-4-26 11:29:38

本帖最后由 悠悠2264 于 2020-4-26 11:31 编辑

while这句应该是不等于空格时执行循环,因为等于空格了,就不会再是A-Z,a-z的字符了,因此也不会执行if语句。应改成:
while ((ch = getchar()) != ' ')

sunrise085 发表于 2020-4-26 11:30:59

while条件写错了吧?
好像应该是while ((ch = getchar()) != ' ')
当ch不是空格的时候执行循环吧

fuze11 发表于 2020-4-26 11:33:13

噢 是这样啊
页: [1]
查看完整版本: 求大神看看我怎么没有输出呢