(1)年:必须是四位正整数
月:大于0小于12
日:根据月份判断
(2)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 职称枚举类型
{
class Class1
{
static void Main(string[] args)
{
//y是输入的年,y1是次日的年。dayNum是一个月的天数
int y, m, d, dayNum = 30, y1, m1, d1;
Console.WriteLine("请输入年:");
y = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入月:");
m = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入日:");
d = Convert.ToInt32(Console.ReadLine());
//判断年和月是否合法
if(y<1000||y>9999||m<1||m>12){
Console.WriteLine("年月的输入不合法!");
return;
}
//根据月获得本月的天数
switch(m){
case 2:
dayNum = 28;
if((y%400==0)||(y%4==0&&y%100!=0)){
dayNum = 29;
}
break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
dayNum = 31;
break;
case 4:
case 6:
case 9:
case 11:
dayNum = 30;
break;
}
//判断日是否合法。
if(d<1||d>dayNum){
Console.WriteLine("日期不合法");
return;
}
//下面是合法的,获得次日的日期
if (m == 12)
{
if (d == dayNum)
{
y1 = y + 1;
m1 = 1;
d1 = 1;
}
else
{
y1 = y;
m1 = m;
d1 = d + 1;
}
}
else {
if (d == dayNum)
{
y1 = y;
m1 = m + 1;
d1 = 1;
}
else {
y1 = y;
m1 = m;
d1 = d + 1;
}
}
Console.WriteLine(y1+"年"+m1+"月"+d1+"日");
}
}
}