用c语言编写一个给定年的的日历的程序
int fn(int year)
{
if((year%4==0&&year%100!=0)||(year%400==0))
return 1;
else
return 0;
}
void main()
{
int month[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int i,position,year,day;
scanf("please input year:&year");
position=0;
if(fn(year)==1)
month[1]=29;
for(i=1;i<year-1;i++)
if(fn(i)==1)
postion=(position+366)%7;
else
postion=(position+365)%7;
for(i=0;i<12;i++)
{
printf("\n %d\n",i+1);
printf("Sun Mon Tus wed Thu Fri Sat\n");
for(day=0;day<position-1;position++)
printf(" ");
for(day=0;day<month;month++)
{
priintf("%3d ",day+1);
position+=1;
if(position==7)
{
printf("\n");
position=0
}
}
}
}
大概就是这样了,我没测试,但算法是对的.
int fn(int year)
{
if((year%4==0&&year0!=0)||(year@0==0))
return 1;
else
return 0;
}
void main()
{
int month[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int i,position,year,day;
scanf(