一、问题及代码
/*
* 文件名称:计算某年某月有多少天
* 作 者:伍喜康
* 完成日期:2017 年 3月 31 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:输入某年某月
* 问题描述:我的第一个switch语句。注意switch和case的对应
* 程序输出:本月有x天
* 问题分析:略
* 算法设计:略
*/
#include <iostream>
using namespace std;
void main()
{
int year, month;
cout<<"输入年份和月份:""\n";
cin>>year>>month;
switch(month)
{
case 2:
//判断是否为闰年
if(year%4==0 && year%100!=0 || year%400==0)
cout<<"本月29天"<<"\n";
else
cout<<"本月28天"<<"\n";
break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
cout<<"本月31天"<<"\n";
break;
case 4:
case 6:
case 9:
case 11:
cout<<"本月31天"<<"\n";
break;
default:
cout<<"月份输入错误!\n";
break;
}
}
二、运行结果:
一、问题及代码
/*
* 文件名称:计算分段函数的值
* 作 者:伍喜康
* 完成日期:2017 年 3月 31 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:输入函数自变量x
* 问题描述:多分支的if else语句 注意if和else的对应关系,
一个if对应一个else,并且else与它上面最近的if对应。
* 程序输出:本月有x天
* 问题分析:略
* 算法设计:略
*/
#include<cmath>
#include<iostream>
using namespace std;
int main()
{
double x,y;
cout<<"输入函数自变量x:";
cin>>x;
if(x<2)
y=x;
else
{
if(x>=2&&x<6)
y=x*x+1;
else
if(x>=6&&x<10)
y=sqrt(x+1);
else
y=1/(x+1);
}
cout<<"函数值y="<<y<<"\n";
}
二、运行结果
一、问题及代码
/*
* 文件名称:定期存款利息计算器
* 作 者:伍喜康
* 完成日期:2017 年 3月 31 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:金额和种类
* 问题描述:注意if语句中嵌套switch语句时花括号的位置
* 程序输出:到期利息为a元和本息合计共b元
* 问题分析:略
* 算法设计:略
*/
#include<iostream>
using namespace std;
int main()
{
int type;
double money, a, b, c;
cout << "欢迎使用利息计算器!" << endl;
cout << "请输入存款金额:";
cin >> money;
cout << "======存款期限======" << endl;
cout << "1. 3个月 " << endl;
cout << "2. 6个月" << endl;
cout << "3. 一年 " << endl;
cout << "4. 二年" << endl;
cout << "5. 三年" << endl;
cout << "6. 五年" << endl;
cout << "请输入存款期限的代号:";
cin >> type;
if (type >= 1 && type <= 6)
{
switch (type)
{
case 1:
a = 0.25;
b = 0.031;
break;
case 2:
a= 0.5;
b = 0.033;
break;
case 3:
a = 1;
b = 0.035;
break;
case 4:
a = 2;
b = 0.044;
break;
case 5:
a = 3;
b = 0.05;
break;
case 6:
a= 5;
b = 0.055;
break;
}
c = money * a * b;
cout << "到期利息为:" << c << "元,本息合计共" <<c + money << "元。" << endl;
}
else
cout << "选择存款类型错误!" << endl;
cout << "感谢您的使用,欢迎下次光临!" << endl;
return 0;
}
二、运行结果