C#语言基础— switch case和if的嵌套练习

switch case的学习

例:

            Console.WriteLine("1.汉堡包");
            Console.WriteLine("2.薯条");
            Console.WriteLine("3.鸡块");
            Console.WriteLine("4.鸡腿");
            Console.WriteLine("5.鸡米花");

            Console.Write("请输入您的选择项目数字:");
            string a = Console.ReadLine();

            switch (a)
            {
                case "1":
                    Console.WriteLine("您选择的是汉堡包!");
                    break;
                case"2":
                    Console.WriteLine("您选择的是薯条!");
                    break;
                case"3":
                    Console.WriteLine("您选择的是鸡块!");
                    break;
                case "4":
                    Console.WriteLine("您选择的是鸡腿!");
                    break;
                case "5":
                    Console.WriteLine("您选择的是鸡米花!");
                    break;
                default:
                    Console.WriteLine("输入有误!");
                    break;             }

switch case就是一种选择语句

逻辑性思维题:

例:

判断是不是闰年,普通年份,是4的倍数但是不能是100的倍数
世纪年需要是400的倍数

输入一个年份,判断是不是闰年

Console.Write("请输入一个年份:");
int year = int.Parse(Console.ReadLine());
if (year >= 0 && year <= 9999)

            Console.Write("请输入一个年份:");
            int year = int.Parse(Console.ReadLine());
            if (year >= 0 && year <= 9999)
            {
                if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
                {
                    Console.WriteLine("您输入的年份是闰年!");
                }
                else
                {
                    Console.WriteLine("您输入的年份是平年!");
                }
            }
            else
            {
                Console.WriteLine("您所输入的年份不正确。");
            }

这个例题还算好,只要知道闰年是怎么回事就行了。

例:

输入年月日,看看格式是否正确

做了三遍依旧有错误。

Console.Write("请输入一个年份:");
            int year = int.Parse(Console.ReadLine());
            if (year >= 0 && year <= 9999)
            {
                Console.Write("请输入月份:");
                int m = int.Parse(Console.ReadLine());
                if (m >= 1 && m <= 12)
                {
                    Console.Write("请输入日期:");
                    int day = int.Parse(Console.ReadLine());
                    if (day >= 1 && day <= 31)
                    {
                        if (m == 1 || m == 3 || m == 5 || m == 7 || m == 10 || m == 12)
                        {
                            Console.WriteLine("您输入的日期格式正确,"+year+""+m+""+day);
                        }
                        if(m==4||m==6||m==9||m==11)
                        {
                            if(day<=30)
                            {
                                 Console.WriteLine("您输入的日期格式正确,"+year+""+m+""+day);
                            }
                            else
                            {
                                Console.WriteLine("您输入的日期有误!");
                            }
                        }
                        else//剩下的二月份
                        {
                            if(year%4==0&&year%100!=0||year%400==0)//闰年的情况
                            {
                                if(day<=29)
                                {
                                     Console.WriteLine("您输入的日期格式正确,"+year+""+m+""+day);
                                }
                                else
                                {
                                    Console.WriteLine("您输入的日期格式有误!");
                                }
                            }
                            else//平年
                            {
                                 if(day<=28)
                                {
                                     Console.WriteLine("您输入的日期格式正确,"+year+""+m+""+day);
                                }
                                else
                                {
                                    Console.WriteLine("您输入的日期格式有误!");
                                }
                            }
                        }
                    }
                    else
                    {
                        Console.WriteLine("您输入的日期有误!");
                    }
                }
                else
                {
                    Console.WriteLine("您输入的月份各式有误!");
                }

            }

            else
            {
                Console.WriteLine("您输入的年份格式不正确!");
            }

            Console.ReadLine();

现有中的逻辑还算是比较清晰的,到了打代码上老是不知怎么就乱了,哪个括号包含哪个就乱了套。还得继续完善自己。

时间: 2024-12-17 11:07:45

C#语言基础— switch case和if的嵌套练习的相关文章

C语言switch/case圈复杂度优化重构

软件重构是改善代码可读性.可扩展性.可维护性等目的的常见技术手段.圈复杂度作为一项软件质量度量指标,能从一定程度上反映这些内部质量需求(当然并不是全部),所以圈复杂度往往被很多项目采用作为软件质量的度量指标之一. C语言开发的项目中,switch/case代码块是一个很容易造成圈复杂度超标的语言特性,所以本文主要介绍下降低switch代码段的重构手段(如下图).switch圈复杂度优化重构可分为两部分:程序块的重构和case的重构.程序块重构是对代码的局部优化,而case重构是对代码的整体设计,

03 java语言基础逻辑运算符

03.01_Java语言基础(逻辑运算符的基本用法)(掌握) A:逻辑运算符有哪些 &,|,^,! &&,|| B:案例演示 逻辑运算符的基本用法 注意事项: a:逻辑运算符一般用于连接boolean类型的表达式或者值. b:表达式:就是用运算符把常量或者变量连接起来的符合java语法的式子. 算术表达式:a + b 比较表达式:a == b(条件表达式) C:结论: &逻辑与:有false则false. |逻辑或:有true则true. ^逻辑异或:相同为false,不同

day03&lt;Java语言基础+&gt;

Java语言基础(逻辑运算符的基本用法) Java语言基础(逻辑运算符&&和&的区别) Java语言基础(位运算符的基本用法1) Java语言基础(位异或运算符的特点及面试题) Java语言基础(位运算符的基本用法2及面试题) Java语言基础(三元运算符的基本用法) Java语言基础(三元运算符的练习) Java语言基础(键盘录入的基本格式讲解) Java语言基础(键盘录入的练习1) Java语言基础(键盘录入的练习2) Java语言基础(顺序结构语句) Java语言基础(选择结

c语言基础表达式, 关系运算符, 逻辑运算符, 位运算符, 数据的取值范围, 分支结构(if...else, switch...case)

1.表达式: 表达式的判断是有无结果(值), 最简单的表达式是一个常量或变量, 如:12, a, 3 + 1, a + b, a + 5 都是表达式 2.BOOL(布尔)数据类型: c语言中除了基本数据类型, 还有BOO数据类型, 以及一些其它的数据类型, 如自定义的结构体数据类型 BOOL数据类型是一种表示非真即假的数据类型, 布尔类型的变量只有YES和NO两个值. YES表示表达式结构为真, 反之, NO表示表达式结果为假(在c语言中, 认为非0即为真), BOOL类型主要用与分支结构或循环

Python | 基础系列 &#183;?Python为什么没有switch/case语句?

与我之前使用的所有语言都不同,Python没有switch/case语句.为了达到这种分支语句的效果,一般方法是使用字典映射: def numbers_to_strings(argument): switcher = { 0: "zero", 1: "one", 2: "two", } return switcher.get(argument, "nothing") 这段代码的作用相当于: function(argument)

10-14C#基础--语句(switch....case和for...循环)

10-14C#基础--语句(2) 一.课前作业:“跟电脑猜拳” 二.switch(定义的变量,参数值)......case.... 注:switch...case大多用于值类型的判断,这里不同于if表达式(关系运算). 练习1: 练习2: 三.for(“因为”)....循环 知识点1: 知识点2:加break(跳转),跳出循环体. 练习1: 练习2: 练习3: 或者下面这种方法: 注: 练习5: 以上是switch...case..语句和for...语句的知识点,而for...语句是功能最多的循

(c语言)函数间的调用,switch case

问题描述: 编写以下四个函数: init();//设计函数初始化数组为 1 2 3 4 5 6 7 8 9 10 sort();//设计排序函数,实现数组的降序排列:10 9 8 7 6 5 4 3 2 1 empty();//清空数组,全为0 show();//显示数组 程序分析: 程序的思路:a.先将程序的头和尾写好,在主函数中将要被处理的两个参数(一个数组arr,和数组的长度len).b.再封装那几个函数,额外加上一个menu函数.c.在主函数中用switch case语句调用这几个函数.

嵌入式 Linux C语言——C语言基础

嵌入式 Linux C语言--C语言基础 一.数据类型 1.基本数据类型 数据类型是创建变量的模型.变量名是连续存储空间的别名,程序中使用变量命名存储空间,通过变量可以使用存储空间.变量所占的内存大小取决于创建变量的数据类型. 2.有符号和无符号 有符号数中数据类型的最高位用于标识数据的符号,最高位为1表示为负数,最高位为0表示为正数. 计算机中有符号数通常使用补码表示,正数的补码为正数本身,负数的补码为负数的绝对值的各位取反后加1. 计算机中无符号数通常使用原码表示,无符号数默认为正数,没有符

VBA 语言基础

VBA 语言基础 第一节 标识符 一.定义 标识符是一种标识变量.常量.过程.函数.类等语言构成单位的符号,利用它可以完成对变量.常量.过程.函数.类等的引用. 二.命名规则 1) 字母打头,由字母.数字和下划线组成,如 A987b_23Abc 2) 字符长度小于40,(Excel2002 以上中文版等,可以用汉字且长度可达254 个字符) 3) 不能与VB 保留字重名,如public, private, dim, goto, next, with, integer, single等 第二节 运