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. CF #324 DIV2 E题

    这题很简单,把目标位置排序,把目标位置在当前位置前面的往前交换,每次都是贪心选择第一个满足这样要求的数字. #include <iostream> #include <cstdio& ...

  2. 【翻译自mos文章】在12c数据库中,哪种audit trail 受到支持?

    在12c数据库中,哪种audit trail 受到支持? 来源于:What Audit Trail Types Are Supported For A 12c Database? (文档 ID 198 ...

  3. Windows移动开发(五)——初始XAML

    关于详细的基本功就先说这么多.后面遇到再补充说明,前面说的都是一些代码和原理方面的东西.接下来说的会有界面和代码结合,会有成就感,由于能真正的做出东西来了. Windows移动开发包含Windows ...

  4. 写一个android内置android程序

    当我们编译完毕android源代码之后,就须要对他做点什么事情,我如今正在看老罗的"Android源代码情景分析"一书.在这里主要是记录一些书中没有说清楚的地方. 相同.我们创建一 ...

  5. vbs socket

    http://www.bathome.net/thread-423-1-1.html http://files.cnblogs.com/files/developer-ios/mswinsck.ocx ...

  6. UISearchBar作为inputAccessoryView时的响应链

    UISearchBar对象做为一个普通的视图对象加入到视图控制器的self.view中,定义.初始化.设置delegate.然后becomeFirstResponder,最后resignFirstRe ...

  7. SharePoint 2013 改动表单认证登录页面

    前 言 之前的博客我们介绍了怎样为SharePoint配置表单登陆,可是.登陆页面是丑.非常丑.非常丑.特别非常丑! 我们如今就介绍一下怎样定制SharePoint表单登陆页面! SharePoint ...

  8. bzoj4950: [Wf2017]Mission Improbable

    跟着靖靖做题%%%%% 这题一看就觉得和之前的某场模拟赛的一道题很像,找假如某行某列的最大值一样的就可以只堆一个,跑匈牙利就行 一开始以为箱子不能移动-_-! 然后有个坑,大家都知道当这个位置有箱子就 ...

  9. pass an instance of class to TestCase as parameter

    use testcasesource instead https://stackoverflow.com/questions/4220943/how-to-pass-dynamic-objects-i ...

  10. B1060 [ZJOI2007]时态同步 dfs

    两遍dfs,第一遍有点像找重链,第二遍维护答案,每个点维护一个当前深度,然后就没啥了. ps:memset(lst,-1,sizeof(lst));这一句多余的话让我debug半天... 题干: De ...