try catch

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace trycatch
{
class Program
{
static void Main(string[] args)
{
//异常语句try catch finally
//try//保护执行里面的代码段,若其中一句有误,直接跳转到catch
//{//不管下面的内容
// Console.Write("请输入一个整数");
// int a = int.Parse(Console.ReadLine());
// Console.WriteLine("hello");
//}
//catch//try中发现异常,直接执行,若try中无错,不执行
//{
// Console.WriteLine("输入有误!");
//}
//finally //不管对错都执行
//{
// Console.WriteLine("谢谢使用,再见");
//}
//Console.ReadLine();

// System.Threading.Thread.Sleep(2000);//间隔2秒

int m1 = 31, m3 = 31, m4 = 30, m5 = 31, m6 = 30, m7 = 31, m8 = 31, m9 = 30, m10 = 31, m11 = 30, m12 = 31;
int m2 = 0;
int year;
string y;
int a = 0;
int b = 0;
for (; ; )
{
for (; ; )
{
try
{

Console.WriteLine("请输入一个年份: ");
year = int.Parse(Console.ReadLine());
break;
}
catch
{
Console.WriteLine("您输入的年份格式有误");
}
}
if (year >= 0 && year <= 9999)
{
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
{
y = "您输入的年份是闰年!";
m2 = 29;
}
else
{
y = "您输入的是平年!";
m2 = 28;
}
for (; ; )
{
for (; ; )
{
try
{
Console.WriteLine("请输入月份:");
a = int.Parse(Console.ReadLine());
break;
}
catch
{
Console.WriteLine("您输入的月份格式有误");
}
}

if (a > 0 && a < 13)
{

for (; ; )
{
for (; ; )
{
try
{
Console.Write("请输入日: ");
b = int.Parse((Console.ReadLine()));
break;
}
catch
{
Console.WriteLine("您输入的日期格式有误");
}
}

if ((((a == 1 || a == 3 || a == 5 || a == 7 || a == 8 || a == 10 || a == 12)) && (b > 0 && b < 32)) || ((a == 4 || a == 6 || a == 9 || a == 11) && (b > 0 && b < 31)) || ((a == 2) && (b > 0 && b < (m2 + 1))))
{
switch (a)
{
case 1:
Console.WriteLine("今年过了 " + (b) + " 天了");
break;
case 2:
Console.WriteLine("今年过了 " + (m1 + b) + " 天了");
break;
case 3:
Console.WriteLine("今年过了 " + (m1 + m2 + b) + " 天了");
break;
case 4:
Console.WriteLine("今年过了 " + (m1 + m2 + m3 + b) + " 天了");
break;
case 5:
Console.WriteLine("今年过了 " + (m1 + m2 + m3 + m4 + b) + " 天了");
break;
case 6:
Console.WriteLine("今年过了 " + (m1 + m2 + m3 + m4 + m5 + b) + " 天了");
break;
case 7:
Console.WriteLine("今年过了 " + (m1 + m2 + m3 + m4 + m5 + m6 + b) + " 天了");
break;
case 8:
Console.WriteLine("今年过了 " + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + b) + " 天了");
break;
case 9:
Console.WriteLine("今年过了 " + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + b) + " 天了");
break;
case 10:
Console.WriteLine("今年过了 " + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + b) + " 天了");
break;
case 11:
Console.WriteLine("今年过了 " + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + m10 + b) + " 天了");
break;
case 12:
Console.WriteLine("今年过了 " + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + m10 + m11 + b) + " 天了");
break;
default:
Console.WriteLine("您输入的有误");
break;
}
Console.WriteLine(y + "日期是" + year + "年" + a + "月" + b + "日");

break;

}
else
{
Console.WriteLine("您输入的日有误");
}
} break;

}
else
{
Console.WriteLine("您输入的月份有误");
}

}

}

else
{
Console.WriteLine("您输入的年份有误");
}

}

}
}

}

C#第九节课的更多相关文章

  1. centos 文档的压缩和打包 gzip,bzip2,xz,zip,unzip,tar,tgz 第九节课

    centos  文档的压缩和打包   gzip,bzip2,xz,zip,unzip,tar,tgz  第九节课 SAS盘可以支持热插拔,看机器 tar.zip.tar -czvf 不会动源文件,gz ...

  2. 《linux就该这么学》第九节课:第七章,RAID阵列和LVM逻辑卷技术

    笔记 (借鉴请改动) 7.1.RAID(独立冗余磁盘阵列) 常见的几种RAID:RAID0,RAID1,RAID5,RAID10   raid0  实现写入速度但安全性略低. raid1 实现了速度和 ...

  3. 9、第九节课jquery选择器jq2,20151007

    1.表单选择器 2.not 里面不能加其他标签 $div p:not(not:disable)  错误的 $div p:not(:disable)  正确的 3.选择设置相应属性的标签项 $(&quo ...

  4. Linux第九节课学习笔记

    fdisk可添加.删除.转换分区. 创建主分区:n-p-w:扩展分区:n-e:逻辑分区:n-l. SWAP分区专用格式化命令mkswap,专用挂载命令swapon. 磁盘容量配额中,硬限制必须,软限制 ...

  5. 第九节课-CNN架构

    2017-08-21 这次的课程比较偏向实际的运用,介绍了当前几种比较主流的CNN网络: 主要是AlexNet,GoogleNet, VGG, ResNet 需要把课后习题做了才能更好的理解.

  6. php第九节课

    面向对象 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  7. html第九节课

    正则表达式和marquee 1.表单验证<form></form> (1).非空验证(去空格) (2).对比验证(跟一个值对比) (3).范围验证(根据一个范围进行判断) (4 ...

  8. centos linux安全和调优 第四十一节课

    centos  linux安全和调优    第四十一节课 上半节课 Linux安全 下半节课 Linux调优 2015-07-01linux安全和调优 [复制链接]--http://www.apele ...

  9. centos shell编程6一些工作中实践脚本 nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志 直接送给bc做计算 gzip innobackupex/Xtrabackup 第四十节课

    centos   shell编程6一些工作中实践脚本   nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志  直接送给bc做计算  gzip  innobacku ...

随机推荐

  1. selenium获取弹窗提示

    1.点击保存给的提示是几秒钟,遮罩显示 2. 其他弹窗处理方法 http://blog.csdn.net/Real_Tino/article/details/59068827

  2. 欢聚时代校园招聘java开发一面经历

    收到yy短信通知笔试通过后隔天就一面了,面试时间是下午1点半,跟另外一个同学在1点半的时候已经到了目的酒店,发现面试都集中在一个大厅,摆了非常多桌椅,由不同的面试关在面试.等到2点多的时候才到我.先说 ...

  3. STL源代码剖析 容器 stl_stack.h

    本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie stack ---------------------------------------- ...

  4. Windowns 无法启动 Office Software Protection Platform 服务,系统找不到指定的文件

    导致该服务无法启动的原因是,用kms8激活了win7后又用oem8激活试了下,结果就这样,然后就无法激活了,状态ID都不可用.试过禁用计划任务项目,重建MBR,重建PBR,都无效果.最后在这里找到了解 ...

  5. 10g异机恢复后EM无法启动故障处理一例

    之前在自己的測试环境上做了个异机恢复,原来的库上是配置过EM的,可是在恢复的库上去启动EM就报错了.以下看详细解决过程: PS:原主机名为zlm,恢复出来的主机名为bak [root@bak ~]# ...

  6. Android:制作Update.zip升级包 【转】

    本文转载自:http://zwkufo.blog.163.com/blog/static/2588251201382293049118/ 很多时候厂商或者三方提供的ROM并不能满足需求,比如系统自带软 ...

  7. hdu 2222(AC自动机模版题)

    Keywords Search Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others ...

  8. 判断文件是否为空 C++

    #include <sys/stat.h> int stat(const char *restrict pathname, struct stat *restrict buf); stru ...

  9. CentOS7 iso ks

  10. Python中的math和保留小数位数方法

    转载自 http://xukaizijian.blog.163.com/blog/static/17043311920111163272414/ math模块实现了许多对浮点数的数学运算函数.  这些 ...