湛蓝色的天空 发表于 2019-3-22 10:14:08

系统显示else有错误请大家帮我看一下

#include <stdio.h>
void main()
{
        int year;
        scanf("%d",&year);
        if (year%4==0&&year%400==0);
        printf("%d",yes\n);
        else printf("%d",no\n);

}

jackz007 发表于 2019-3-22 10:21:56

本帖最后由 jackz007 于 2019-3-22 10:25 编辑

      if (year%4==0&&year%400==0);
      printf("%d",yes\n);
      else printf("%d",no\n);
    改成这样
      if (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)) printf("yes\n");
      else printf("no\n");

湛蓝色的天空 发表于 2019-3-22 10:25:17

jackz007 发表于 2019-3-22 10:21
改成这样

兄弟,还是有错误

jackz007 发表于 2019-3-22 10:27:25

湛蓝色的天空 发表于 2019-3-22 10:25
兄弟,还是有错误

   已经重新修改过,现在再看呢?

sunrise085 发表于 2019-3-22 10:37:29

有两个错误。
第一:if条件语句之后多了一个分号;
第二:printf语句中的yes和no未定义;
#include <stdio.h>
void main()
{
      int year;
      scanf("%d",&year);
      if (year%4==0&&year%400==0)
                printf("yes\n");
      else
                printf("no\n");

}

wp231957 发表于 2019-3-22 10:38:18

一楼代码 的if 语句后面有分号,表示 本语句到此为止。
后面的else 找不到根据地了,所以没办法报错吧
页: [1]
查看完整版本: 系统显示else有错误请大家帮我看一下