求高手帮忙纠正下程序 谢谢
#include <stdio.h>void main()
{
int year,day,leap,days,month;
printf("please input year month and day:");
scanf ("%d %d %d",year,month,day);
if(year%4==0)
{
if (year%100==0)
{
if(year%400==0)
{
leap=1;
}
else
{
leap=0;
}
}
else
{
leap=1;
}
else
{
leap=0;
}
if(leap && month>3)
{
if(month%2==0)
{
days=(30*month)+(month/2)+1;
}
else
{
days=(31*month)-(month/2)+1;
}
}
else
{
if(month%2==0)
{
days=(30*month)+(month/2);
}
else
{
days=(31*month)-(month/2);
}
}
printf("%d",days);
}
上面的程序有错。。。显示说1.说else用错了 2说scanf那有错 3.说最后一个括号}有错
但还是不知道怎样改 求高手帮忙改改谢谢
#include <stdio.h>
void main()
{
int year,day,leap,days,month;
printf("please input year month and day:");
//scanf ("%d %d %d",year,month,day);
scanf("%d %d %d",&year,&month,&day);
/*if(year%4==0)
{
if (year%100==0)
{
if(year%400==0)
{
leap=1;
}
else
{
leap=0;
}
}
else
{
leap=1;
}
else//连续两个else不错才怪看你这代码就是判断是否是闰年是吧
{
leap=0;
}*/
if(year%4 == 0 && year%100 != 100 || year%400 == 0)
{
leap = 1;
}
else
{
leap = 0;
}
if(leap && month>3)
{
if(month%2==0)
{
days=(30*month)+(month/2)+1;
}
else
{
days=(31*month)-(month/2)+1;
}
}
else
{
if(month%2==0)
{
days=(30*month)+(month/2);
}
else
{
days=(31*month)-(month/2);
}
}
printf("%d",days);
} scanf函数你忘记写取址符&了 我用的这个编译器显示scanf没错,你的程序最后少了一个},还有一个else错了。 1. scanf ("%d %d %d" &year, &month, &day);// 要加&
2. 第一個 else 前面少了個 } 並且 爲什麽會有兩個else?
此為初學者,鑒定完畢,要多加練習,自己調試、
页:
[1]