注册 登录
编程论坛 C语言论坛

萌新求助else if(a>=80&&a<90);和 else这两行显示error: 'else' without a previo

Xckz 发布于 2020-03-23 18:26, 1357 次点击
#include <stdio.h>

void main()
{
    int a;
    scanf("%d",&a);
    if(a<60)
    {
        printf("E\n");
    }
    else if(a>=60&&a<70)
    {
        printf("D\n");
    }
    else if(a>=75&&a<80);
    {
        printf("C\n");
    }
    else if(a>=80&&a<90);
    {
        printf("B\n");
    }
    else
    {
        printf("A\n");
    }
}
6 回复
#2
forever742020-03-23 18:49
有两个if后面末尾存在分号,是为蛇足。
#3
maomao123452020-03-23 19:08
else后面能有;吗?
#4
maomao123452020-03-23 19:09
如果有;的话,else语句就结束了
#5
hbccc2020-03-23 21:24
else if(a>=75&&a<80);
    {
        printf("C\n");
    }
    else if(a>=80&&a<90);
    {
        printf("B\n");
这两个else if后面不要写;
如果写了;,编译器就会认为,else if语句已经结束,下面的else没有对应的if,所以出错
#6
Xckz2020-03-24 21:43
回复 5楼 hbccc
谢谢
#7
Xckz2020-03-24 21:44
回复 2楼 forever74
知道啦,谢谢
1