在接触流程控制语句switch case的时候,感觉这个很有意思,就花了点时间去慢慢的去深入了解它,并且和if语句一起嵌套使用,就找了个题目来练练手,
这个就是通过输入年份和月份,来判断年份是否为闰年,并且可以知道你输入的月份有多少天。

#include <iostream>
using namespace std;
void main(){
int year, month, mon;cout << "请输入年份和月份,并用空格隔开" << endl;cin >> year >> month;   if (month < 1 || month>12){cout << "你输入的月份不正确!!!" << endl;}else {if ((year % 4 == 0 && year % 100 != 0) || year % 100 == 0){mon = 1;cout << "你输入的年份是闰年。" << endl;}else{mon = 2;cout << "你输入的年份为普通年。" << endl;}}switch (month){case 1:cout << "你输入的一月份共有31天"; break;case 2:if (mon==1){cout << "你输入的二月份共有29天";}else{cout << "你输入的二月份共有28天";}; break;case 3:cout << "你输入的三月份共有31天" << endl; break;case 4:cout << "你输入的四月份共有30天" << endl; break;case 5:cout << "你输入的五月份共有31天" << endl; break;case 6:cout << "你输入的六月份共有30天" << endl; break;case 7:cout << "你输入的七月份共有31天" << endl; break;case 8:cout << "你输入的八月份共有31天" << endl; break;case 9:cout << "你输入的九月份共有30天" << endl; break;case 10:cout << "你输入的十月份共有31天" << endl; break;case 11:cout << "你输入的十一月份共有30天" << endl; break;case 12:cout << "你输入的十二月份共有31天" << endl; break;default:cout << "输入有误!" << endl;break;}
}

这个题目虽然说不是很难,可是也费了我不少的心神去弄,其实我并不是很清楚润年和平年是怎么的来的,无奈只有找了下度娘,得知
普通年(不能被100整除的年份)能被4整除的为闰年。(如2004年就是闰年, 1999年不是闰年);
世纪年(能被100整除的年份)能被400整除的是闰年。(如2000年是闰年,1900年不是闰年);
知道恍然大悟,为什么呢,因为闰年和普通年不同的地方在二月份,只要这里能够判断好,那么思路就很清晰了,就慢慢的摸索了出来,只是感觉这个代码太过于多了,应该还是可以进一步优化的。

C++中的switch case 语句相关推荐

  1. java的case_java中的switch case语句使用详解

    java中的switch case语句 switch-case语句格式如下: switch(变量){ case 变量值1: //; break; case 变量值2: //...; break; .. ...

  2. java中switchcase用法,java中的switch case语句使用详解

    java中的switch case语句 switch-case语句格式如下: ? swtich()变量类型只能是int.short.char.byte和enum类型(JDK 1.7 之后,类型也可以是 ...

  3. java switch case语句_在Java中使用switch Case语句的例子

    当我们有多个选项,并且需要为每个选项执行不同的任务时,就需要使用Switch case语句. Switch case语句的语法如下-switch (variable or an integer exp ...

  4. java里面case是什么意思_什么是Java中的switch case语句以及如何使用它?

    switch 语句允许根据值列表测试变量是否相等.每个值被称为一个case,并针对每个case检查正在打开的变量. 语法switch(expression) { case value : //声明 b ...

  5. c语言case的值能动态修改吗,java中的switch case语句中,case所对应的数目是不确定的,能否动态改变case...

    现在方法中传入的menuList的数目是不确定的,每个menuList.get(i),都对应一个runnableList.get(i).现在需要根据menuList.size()动态改变case的数目 ...

  6. SQL中的条件语句case-when-then-else(就像C中的switch case语句)

    select u_id , u_name , u_score ,case when u_score >= 65.45 then '优秀'when u_score >=60 and u_sc ...

  7. java break在switch_java中switch case语句需要加入break的原因解析

    java中switch case语句需要加入break的原因解析 java 中使用switch case语句需要加入break 做了具体的实例分析,及编译源码,在源码中分析应该如何使用,大家可以参考下 ...

  8. python中的switch语句_python技巧 switch case语句

    不同于C语言和SHELL,python中没有switch case语句,关于为什么没有,官方的解释是这样的 使用Python模拟实现的方法: def switch_if(fun, x, y): if ...

  9. python中的case语句_python技巧 switch case语句

    不同于C语言和SHELL,python中没有switch case语句,关于为什么没有,官方的解释是这样的 使用Python模拟实现的方法: def switch_if(fun, x, y): if ...

最新文章

  1. pycharm代码自动补全功能
  2. java access 分页查询语句,简单又高效的Access分页语句
  3. Linux ubuntu中怎么生成随机数,随机数的生成
  4. 线性表(二)——链表
  5. DL之Yolov3:基于深度学习Yolov3算法实现视频目标检测之对《我要打篮球》视频段进行实时目标检测
  6. javaScript解决Form的嵌套
  7. 01.elasticsearch-mapping全面解析
  8. HttpMate简介
  9. JSF开发人员应该知道的5种有用方法
  10. SQL 查询--日期条件(今日、昨日、本周、本月。。。) (转)
  11. svn增量打包部署_实现Jenkins+svn+bat批处理构建svn版本差异增量的自动化打zip包
  12. 【python】从web抓取信息
  13. win7开机动画_分享win7开机画面修改方法
  14. 浅谈管理软件的功能与作用-—以Nvisual综合布线可视化运维管理平台和进销存管理软件为例
  15. 知识分享|日本面试常考问题+巧妙回答 ②
  16. 推荐:详解AI加速器(最终篇)
  17. 订阅号助手android,微信订阅号助手app
  18. 独孤求败——浅谈FireFox中file控件不能取到客户端文件的完整路径的问题
  19. Python爬虫入门之查询ip地址
  20. 开发系统所需的服务器,开发软件的服务器需要什么配置

热门文章

  1. Excel中返回某个数所在的区间段
  2. oracle 能闪回多久数据,oracle 数据闪回
  3. Swim-Transformer环境配置
  4. 安科瑞电气能耗管理云平台在大型公建能耗监测平台的应用
  5. 允许网站使用相机和麦克风_Windows 10 相机、麦克风和隐私
  6. 对话元道:通证经济需要“互链网”,“互链网”需要细腰
  7. 怎样更直观的查看KingbaseES数据库日志
  8. 爬虫中获取cookie的方式
  9. 用户体验设计之路(二):需求到界面的距离
  10. EOS DApp开发入门(一)