选择语句----switch case
今天学习了选择语句的 switch case是多选一的情况可以使用。
案例:
//分别输入月份 几号 输出是今年的多少天
//每年的1,3,5,7,8,10,12月是31天
//今年的2月是28天 其他是30
int m1 = 31, m2 = 28, m3 = 31, m4 = 30, m5 = 31, m6 = 30, m7 = 31, m8 = 31, m9 = 30, m10 = 31, m11 = 30;----无需定义12月份的量,因为用不着 Console.Write("请输入月份:"); int m = int.Parse(Console.ReadLine()); Console.Write("请输入几号:"); int d = int.Parse(Console.ReadLine()); switch (m)-------一旦有匹配的则执行其中之一,其他都不执行,无匹配的则转到default。break是指跳出选择。 { case 1: Console.WriteLine("今天是今年的第" + d + "天。"); break; case 2: Console.WriteLine("今天是今年的第" + (m1 + d) + "天。"); break; case 3: Console.WriteLine("今天是今年的第" + (m1 + m2 + d) + "天。"); break; case 4: Console.WriteLine("今天是今年的第" + (m1 + m2 + m3 + d) + "天。"); break; case 5: Console.WriteLine("今天是今年的第" + (m1 + m2 + m3 + m4 + d) + "天。"); break; case 6: Console.WriteLine("今天是今年的第" + (m1 + m2 + m3 + m4 + m5 + d) + "天。"); break; case 7: Console.WriteLine("今天是今年的第" + (m1 + m2 + m3 + m4 + m5 + m6 + d) + "天。"); break; case 8: Console.WriteLine("今天是今年的第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + d) + "天。"); break; case 9: Console.WriteLine("今天是今年的第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + d) + "天。"); break; case 10: Console.WriteLine("今天是今年的第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + d) + "天。"); break; case 11: Console.WriteLine("今天是今年的第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + m10 + d) + "天。"); break; case 12: Console.WriteLine("今天是今年的第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + m10 + m11 + d) + "天。"); break; default: Console.WriteLine("您的输入有误。"); break; }
案例:(想了好久,这个题。)
//输入一个年,月,日。看格式是否正确。
Console.Write("请输入一个年份:"); int year = int.Parse(Console.ReadLine()); if (year <= 9999 && year > 0) { Console.Write("请输入一个月份:"); int m = int.Parse(Console.ReadLine()); if (m <= 12 && m >= 1) { Console.Write("请输入一个日期:"); int d = int.Parse(Console.ReadLine());--------从这里往上很简单,到下面的选择语句卡了。 if (m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12)-------一开始这里写成(d<=31&&d>=1)后来反应过来不对,哈哈 { if (d >= 1 && d <= 31) { Console.WriteLine("输入格式正确"); } else { Console.WriteLine("您输入的格式有误。"); } } else if (m == 4 || m == 6 || m == 9 || m == 11) { if (d >= 1 && d <= 30) { Console.WriteLine("输入格式正确"); } else { Console.WriteLine("您输入的格式有误。"); } } else { if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) //判断闰年,知道闰年的规律就好写了,四年一闰,百年不闰,四百年再闰。 { 年份是整百数时,必须是400的倍数才是闰年;不是400的倍数的年份, 即使是4的倍数也不是闰年。 if (d >= 1 && d <= 29) { Console.WriteLine("输入格式正确"); } else { Console.WriteLine("您输入的格式有误。"); } } else { if (d >= 1 && d <= 28) { Console.WriteLine("输入格式正确"); } else { Console.WriteLine("您输入的格式有误。"); } } } } else//月份不在1~12 { Console.WriteLine("您输入的格式有误。"); } } else//不在9999~0 { Console.WriteLine("您输入的格式有误。"); }