内容:输入年和月,判断该月有几天
目的:更好地理解switch语句
程序代码:
/*
* 程序的版权和版本声明部分:
* Copyright (c) 2013, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作 者:匡效国
* 完成日期:2013 年 3 月 21 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:输入年份和月份
* 问题描述:判断输入的月份有多少天
* 程序输出:见下图
* 问题分析:略
* 算法设计:使用switch语句
*/
#include <iostream>
using namespace std;
int main()
{
int year,month,days;
char a;
cin>>year>>a>>month;
while(year<0||month<0||month>12)//当输入不合法时,需重新输入
cin>>year>>a>>month;
cout<<endl;
switch(month)//使用switch语句实现对每月天数的判断
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:days=31; break;
case 4:
case 6:
case 9:
case 11:days=30; break;
case 2:days=28;
}
if(((year%4==0&&year%100!=0)||year%400==0)&&month==2)//判断是否为闰年,如果是且是二月,则天数需加一
days+=1;
cout<<year<<"的"<<month<<"月有"<<days<<"天"<<endl;
return 0;
}
运行结果:
心得体会:感觉switch语句不太难理解,只要多编一些程序,应该就很容易掌握了