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. git tag打标签常用命令

    # 创建轻量标签$ git tag v0.1.2-light 切换到标签 与切换分支命令相同,用git checkout [tagname]查看标签信息用git show命令可以查看标签的版本信息:$ ...

  2. PHP array_diff()

    定义和用法 array_diff() 函数返回两个数组的差集数组.返回的数组的元素都取自被比较的数组(既第一个数组). 在返回的数组中,键名保持不变. 语法 array_diff(array1,arr ...

  3. CF #329 C

    C题我还以为是拉格朗日插值... 其实可以想象到,必须有这样一个函数,经过某一点时,其它圆相关的函数要为0. 于是,可以构造这样的一个函数,对于x有 (x/2)*(1-abs(t-i)+abs(1-a ...

  4. gradle配置国内的镜像

    gradle配置国内的镜像 学习了:http://blog.csdn.net/stdupanda/article/details/72724181 http://blog.csdn.net/lj402 ...

  5. android 用java代码设置布局、视图View的宽度/高度或自适应

    在achat项目中,对话内容的长宽设置为自适应.可是假设文本内容太多,则宽度几乎相同布满,若自己说的和对方说的都非常多内容.则满屏都是文字.则不easy分辨出是来自别人说的还是自己说的.那么须要对本身 ...

  6. DBCP数据源使用

    DBCP:DataBase Connection Pool 1.须要的jar:commons-dbcp.jar  commons-pool.jar 2.把DBCP的配置文件(dbcpconfig.pr ...

  7. oc44--多对象内存管理

    // Room.h #import <Foundation/Foundation.h> @interface Room : NSObject @property int no;// 房间号 ...

  8. fixed和absolute

    fixed是相对于浏览器窗口固定 absolute是相对于整体网页固定.(整体网页包括所有的内容,包含右侧滑动条滑动所能看到的内容)

  9. poi读取word2003(.doc文档)中的表格

    poi读取word2003(.doc文档)中的表格 Jakarta POI 是apache的子项目,目标是处理ole2对象.它提供了一组操纵Windows文档的Java API.在网上见到好多通过po ...

  10. codeforces 931E Logical Expression dp

    time limit per test 3 seconds memory limit per test 256 megabytes input standard input output standa ...