使用结构体输入并输出日期 且自动检测日期正确性

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include<iostream>
using namespace std;
void main()
{
struct Date
{
int year;
int month;
int day;
}date;
cout<<"请输入日期"<<endl;
cin>>date.year>>date.month>>date.day;
int i,j,a,b,c,d;
a=b=c=d=1;
i=date.day;
j=date.month;
if(j>12)
{cout<<"一年中只有12个月"<<endl;d=0;}
if(i>31)
{cout<<"一个月最多有31天"<<endl;a=0;}
if(j==4||j==6||j==9||j==11)
if(i>30)
{cout<<"这个月只有30天"<<endl;b=0;}
if(j==2)
{
if(date.year%4==0&&date.year%100!=0||date.year%400==0)
{
if(i>29)
{cout<<"这个月只有29天"<<endl;c=0;}
}
else
if(i>28)
{cout<<"这个月只有28天"<<endl;c=0;}
}

if(a==1&&b==1&&c==1&&d==1)
{
cout<<date.day<<"/"<<date.month<<"/"<<date.year<<endl;
date.day++;
cout<<date.day<<"/"<<date.month<<"/"<<date.year<<endl;
}
}