switch case语句
五、switch case语句
1、格式
Switch(表达式)
{
case 表达式:语句块
break;
…
default
break;
}
2、例题
输入年份、月份、日期,判断是否是闰年,并且输出是当年的第几天。
主要代码:
while (true)
{
Console.Write("请输入年份:");
int y = int.Parse(Console.ReadLine());
if (y >= 1 && y <= 9999)
{
if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
{
Console.WriteLine("您输入的是闰年!");
Console.Write("请输入月份:");
int m = int.Parse(Console.ReadLine());
if (m >= 1 && m <= 12)
{
Console.Write("请输入日期:");
int d = int.Parse(Console.ReadLine());
if (((m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12) && (d >= 1 && d <= 31)) || ((m == 4 || m == 6 || m == 9 || m == 11) && (d >= 1 && d <= 30)) || (m == 2 && (d >= 1 && d <= 29)))
{
switch (m)
{
case 1: Console.WriteLine("是{0}年的第{1}天。", y, d);
break;
case 2: Console.WriteLine("是{0}年的第{1}天。", y, 31 + d);
break;
case 3: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 29 + d);
break;
case 4: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 29 + 31 + d);
break;
case 5: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 29 + 31 + 30 + d);
break;
case 6: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 29 + 31 + 30 + 31 + d);
break;
case 7: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 29 + 31 + 30 + 31 + 30 + d);
break;
case 8: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 29 + 31 + 30 + 31 + 30 + 31 + d);
break;
case 9: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + d);
break;
case 10: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + d);
break;
case 11: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + d);
break;
case 12: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + d);
break;
}
Console.WriteLine("现在是{0}年{1}月{2}日!", y, m, d);
}
else
Console.WriteLine("您输入的不是正确日期!");
Console.WriteLine("{0}年是闰年!", y);
}
else
Console.WriteLine("您输入的不是正确月份!");
}
else
{
Console.WriteLine("您输入的不是是闰年!");
Console.Write("请输入月份:");
int m = int.Parse(Console.ReadLine());
if (m >= 1 && m <= 12)
{
Console.Write("请输入日期:");
int d = int.Parse(Console.ReadLine());
if (((m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12) && (d >= 1 && d <= 31)) || ((m == 4 || m == 6 || m == 9 || m == 11) && (d >= 1 && d <= 30)) || (m == 2 && (d >= 1 && d <= 28)))
{
switch (m)
{
case 1: Console.WriteLine("是{0}年的第{1}天。", y, d);
break;
case 2: Console.WriteLine("是{0}年的第{1}天。", y, 31 + d);
break;
case 3: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 28 + d);
break;
case 4: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 28 + 31 + d);
break;
case 5: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 28 + 31 + 30 + d);
break;
case 6: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 28 + 31 + 30 + 31 + d);
break;
case 7: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 28 + 31 + 30 + 31 + 30 + d);
break;
case 8: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 28 + 31 + 30 + 31 + 30 + 31 + d);
break;
case 9: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + d);
break;
case 10: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + d);
break;
case 11: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + d);
break;
case 12: Console.WriteLine("是{0}年的第{1}天。", y, 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + d);
break;
}
Console.WriteLine("现在是{0}年{1}月{2}日!", y, m, d);
}
else
Console.WriteLine("您输入的不是正确日期!");
Console.WriteLine("{0}年不是闰年!", y);
}
else
Console.WriteLine("您输入的不是正确月份!");
}
}
else
Console.WriteLine("您输入的不是正确的年份!");
}
Console.ReadLine();
结果:
switch case语句的更多相关文章
- 为什么说在使用多条件判断时switch case语句比if语句效率高?
在学习JavaScript中的if控制语句和switch控制语句的时候,提到了使用多条件判断时switch case语句比if语句效率高,但是身为小白的我并没有在代码中看出有什么不同.去度娘找了半个小 ...
- java中的Switch case语句
java中的Switch case 语句 在Switch语句中有4个关键字:switch,case break,default. 在switch(变量),变量只能是整型或者字符型,程序先读出这个变量的 ...
- switch… case 语句的用法
switch… case 语句的用法 public class Test7 { public static void main(String[] args) { int i=5; switch(i ...
- if语句,if...else if语句和switch...case语句的区别和分析
前段时间在工作中遇到了一个关于条件判断语句的问题,在if语句,if else if语句和switch case语句这三者之间分析,使用其中最有效率的一种方法. 所以就将这个问题作为自己第一篇博客的主要 ...
- Python | 基础系列 · Python为什么没有switch/case语句?
与我之前使用的所有语言都不同,Python没有switch/case语句.为了达到这种分支语句的效果,一般方法是使用字典映射: def numbers_to_strings(argument): sw ...
- 为什么switch...case语句比if...else执行效率高
在C语言中,教科书告诉我们switch...case...语句比if...else if...else执行效率要高,但这到底是为什么呢?本文尝试从汇编的角度予以分析并揭晓其中的奥秘. 第一步,写一个d ...
- JavaScript基础知识(if、if else、else if、while、switch...case语句)
13.语句 概念:就是分号(:) 代表一条语句的结束 习惯:一行只编写一条语句:一行编写多条语句(代码可读性较差) 语句块:可以包含多条语句 "{ }"将多条语句包裹 u ...
- C语言中switch case语句可变参实现方法(case 参数 空格...空格 参数 :)
正常情况下,switch case语句是这么写的: : : ... ;break ; default : ... ;break ; } 接下来说一种不常见的,但是对于多参数有很大的帮助的写法: 先给一 ...
- Java基础之循环语句、条件语句、switch case 语句
Java 循环结构 - for, while 及 do...while 顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: whi ...
- python技巧 switch case语句
不同于C语言和SHELL,python中没有switch case语句,关于为什么没有,官方的解释是这样的 使用Python模拟实现的方法: def switch_if(fun, x, y): ...
随机推荐
- 【Asp.net入门07】第一个ASP.NET 应用程序-创建数据模型和存储库
1.理解概念 先理解一下两个概念. 模型 模型是指数据的结构类型,以及可调用的方法.对面向对象编程方法来说,其实就是类.模型类就是一个描述数据的类.只有把数据按一定方式描述出来,我们才能在程序中方便地 ...
- Python【多线程与多进程】
import time,threading print("=======串行方式.并行两种方式调用run()函数=======")def run(): print('哈哈哈') # ...
- Go_12:Go命令行处理
概述 常用的命令行参数解析有 2 种方式,一种是不带参数标签直接接上参数值,另外一种就是带有标签的参数解析.第一种我们可以直接通过 os 包提供的原始方法获取,第二种我们需要通过 flag 包来解析获 ...
- KVM管理概述
一.使用QEMU管理虚拟机 1.KVM指南 https://activedoc.opensuse.org/book/opensuse-virtualization-with-kvm/part-iii- ...
- VS2010 中更改项目名称
Time.vcxproj修改项目名称,主要是通过以下几个步骤就能完成: 修改解决方案的名称. 修改解决项目名称. 修改项目的程序集名称和默认命名空间 替换整个项目或解决方案中的出现该名称的地方. 修改 ...
- HDU 5446 lucas CRT
n中选m个模M,M为多个素数之积 $n, m, k (1 \leq m \leq n \leq 10^{18}, 1 \leq k \leq 10)$,$M = p_1 · p_2 · · · p_k ...
- Jekens 配置多项目SCM GitLab+Jenkins持续集成环境
参考: 搭建GitLab+Jenkins持续集成环境图文教程 https://blog.csdn.net/ruangong1203/article/details/73065410 Jenkins中配 ...
- soj1036. Crypto Columns
1036. Crypto Columns Constraints Time Limit: 1 secs, Memory Limit: 32 MB Description The columnar en ...
- LintCode 158: Anagram
LintCode 158: Anagram 题目描述 写出一个函数anagram(s, t)判断两个字符串是否可以通过改变字母的顺序变成一样的字符串. 样例 给出s = "abcd" ...
- 基本控件文档-UIButton属性
CHENYILONG Blog 基本控件文档-UIButton属性 Fullscreen UIButton属性技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博ht ...