求大神帮忙呀
闰年的程序,可是打出了,没有错误也没有警告,但一在运行方框上打上年份,回车就出错了,求大神帮助#include<stdio.h>
void main()
{
int a,b;
printf("Please input a number:");
scanf("%lf",&a);
if(a%4==0)
{
if(a%100==0)
{
if(a%400==0)
{
b=1;
}
else
{
b=0;
}
}
else
{
b=1;
}
}
else
{
b=0;
}
if(b)
{
printf("%d year is run",a);
}
else
{
printf("%d year is not run",a);
}
}
scanf("%lf",&a);
lf吗? 用 %d:
#include<stdio.h>
void main()
{
int a,b;
printf("Please input a number:");
scanf("%d",&a);
if(a%4==0)
{
if(a%100==0)
{
if(a%400==0)
{
b=1;
}
else
{
b=0;
}
}
else
{
b=1;
}
}
else
{
b=0;
}
if(b)
{
printf("%d year is run",a);
}
else
{
printf("%d year is not run",a);
}
} 本帖最后由 jackz007 于 2020-2-6 12:57 编辑
读取整数这么写不对
scanf("%lf",&a);
应该这么写代码:
scanf("%d",&a);
另外,代码是否不够简洁?
#include <stdio.h>
int main(void)
{
int a ;
printf("Please input a number: ") ;
scanf("%d" , & a) ;
if((! (a % 4) && a % 100) || ! (a % 400)) printf("%d year is run\n" , a) ;
else printf("%d year is not run\n" , a) ;
} 懂了懂了,谢谢
页:
[1]