C语言....不会了

来源:百度知道 编辑:UC知道 时间:2024/05/27 12:49:55
#include<stdio.h>
void tomorrow(struct date);
int panduan(int);
struct date
{
int year;
int month;
int day;
}today;
void main()
{
printf("请输入今天的日期。\n年月日:");
scanf("%d%d%d",today.year,today.month,today.day);
tomorrow(today);
}
int panduan(int y)
{
int m;
if(y%4==0&&y%100!=0||y%400==0)
m=1;
return m;
}
void tomorrow(struct date d)
{
int monthdays[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int m;
m=panduan(d.year);
if(m==1&&d.month==2&&d.day==28)
d.day+=1;
else if(d.month==12&&d.day==monthdays[11])
{
d.year+=1;
d.month=1;
d.day=1;
}
else if(d.day==monthdays[d.month-1])
{
d.month+=1;
d.day=1;
}
else
{
d.day+=1;
}
printf("明天应该是%d年%d月%d日。",d.year,d.month,d.day);
}

scanf("%d%d%d",today.year,today.month,today.day);
这一行有问题
应该是:
scanf("%d%d%d", &today.year, &today.month, &today.day);
不过你计算闰年的时候还是有问题。自己好好想想
应该是
if(m==1&&d.month==2&&d.day==28)
{
d.month+=1;
d.day=1;
}

你想问什么?只有程序没有问题.