奔跑的小鸟11 发表于 2020-11-9 11:34:37

为啥这个报错else缺失if

#include<stdio.h>
main()
{
        int x;
        char ch;
        ch=getchar();
        scanf("%d",&x);
        if(x>='0'&&x<='9')
        {
                printf("输入的为数字字符\n");
        }
        else if(x>='a'&&x<='z'||x>='A'&&x<='Z');
        {
                printf("输入的为字母字符\n");
       }
        else
        {
                printf("输入的为其他字符\n");
        }
}

jackz007 发表于 2020-11-9 11:43:15

} else if(x>='a'&&x<='z'||x>='A'&&x<='Z') ;
    去掉行尾红色的分号

奔跑的小鸟11 发表于 2020-11-9 12:27:24

jackz007 发表于 2020-11-9 11:43
} else if(x>='a'&&x='A'&&x

运行了 但是为啥输入两个才打印判断结果呢

jackz007 发表于 2020-11-9 12:30:22

奔跑的小鸟11 发表于 2020-11-9 12:27
运行了 但是为啥输入两个才打印判断结果呢

      去掉这一行:
      ch=getchar();

奔跑的小鸟11 发表于 2020-11-9 12:36:23

jackz007 发表于 2020-11-9 12:30
去掉这一行:

怎么才能打印出字母字符呢

jackz007 发表于 2020-11-9 12:52:30

奔跑的小鸟11 发表于 2020-11-9 12:36
怎么才能打印出字母字符呢

#include <stdio.h>
int main(void)
{
      char ch                                                                              ;
      scanf("%c" , & ch)                                                                   ; // 也可以用 ch = getchar() ;
      if(ch >= '0' && ch <= '9') printf("输入的为数字字符\n")                               ;
      else if(ch >= 'a' && ch <= 'z'|| ch >= 'A' && ch <= 'Z') printf("输入的为字母字符\n") ;
      else printf("输入的为其他字符\n")                                                   ;
      printf("您输入的字符是:%c\n" , ch)                                                   ; // 也可以用 putchar(ch) ;
}
页: [1]
查看完整版本: 为啥这个报错else缺失if