这C语言编程哪错了。。求高手解答

2024-11-07 18:49:44
推荐回答(5个)
回答1:

你好!

    闰年的判断有误,你看看吧,应该用 % 求余数不是 / 除号,!== 不等于是一个等号 !=

#include "stdio.h"
int main()
     {
      int iyear;

      printf("please input a year");
      scanf("%d",&iyear);

      if(( (iyear%4==0) && (iyear%100!=0) ) || (iyear%400==0) )
         printf("yes");
      else
          printf("no");
      getch();
}

回答2:

问题有两个:
1,if里面的iyear/4改成iyear%4,是取余数,不是取整,其余一样。
2,if里面的iyear/100!==0,的不等于改成 != 不是!==;
运行通过代码:
#include "stdio.h"
int main()
{
int iyear;
printf("please input a year");
scanf("%d",&iyear);
if (((iyear%4 ==0)&&(iyear%100!=0))||((iyear%400)==0))
printf("yes");
else
printf("no");

}
爱学习,多看书,加油!

回答3:

#include "stdio.h"
void main()
{
int iyear;

printf("please input a year");
scanf("%d",&iyear);

if (((iyear%4==0)&&(iyear%100!=0))||(iyear%400==0))
printf("yes");
else
printf("no");
getchar();
}
判断是否闰年是看余数是否为零,不是商,接收一个字符的命令是getchar(),没有getch()这个命令

回答4:

if (((iyear/4==0)&&(iyear/100!==0))||(iyear/400==0))有语法错误:
iyear/100!==0应该改为iyear/100!=0

回答5:

可以被4整除的意思是对4取余的结果为0,而不是除以4的结果为0,只有小于4的数除以4的结果才为0.对400也是一样的。