using System;
namespace year
{
class Program
{
static void Main(string[] args)
{
//输入年丰月份输出该月的天数
("请输入年份");
try
{
int year = Convert.ToInt32(());
("请输入月份:");
try
{
int month = Convert.ToInt32(());
if (month >= 1 && month <= 12)
{
int day = 0;
switch (month)
{
case 1:
case 7:
case 9:
case 12:
case 5:
day = 31;
break;
case 2:
if ((year % 400 == 0) || (year / 4 == 0 && year % 100 != 0))
{
day = 29;
}
else
{
day = 28;
}
break;
default:
day = 30;
break;
}
("{0}年{1}月{2}日", year, month, day);
}
else
{
("输入错误,程序退出:");
}
}
catch
{
("输入月份有误,程序退出:");
}
}
catch
{
("输入年份有误,程序退出:");
}
}
}
}
为了使程序更加稳定,不容易崩溃,使用了try—catch(
语法:
try{
可能出现异常的代码:
…………
}
Catch
{
出现异常后要执行的代码;
}
执行过程中如果try出现异常那么无论出现一场代码后面有多少代码,也不会执行,会直接跳出try只想catch中的代码
)增加了程序的稳定性,此程序利用了switch语句(程序执行到switch处,首先将括号中的变量或者表达式的值计算出来,然后拿这个值跟每个case后面的所带的值依次匹配,一旦匹配成功,则执行该case所带的代码,执行完成后跳出switch—case 结构; 如果跟所有的case 都不匹配,那么找到该结构中有么有default,如果有执行default后的代码,如果没有default则跳出switch—case;)中间的if语句判断了当月份大于12时的会导致的代码的不准确。好啦,这就是通过输入年月日来输出该月的天数的代码;