📄 calculat.cpp
字号:
//这个程序在本书所带软盘中。文件名为CALCULAT.CPP
//This program uses a menu to allow the user to add,
//multiply, subtract, or divide two integers.
#include <iostream.h>
#include <stdlib.h> //头文件用来支持exit()
#include <stdio.h> //头文件用来支持fflush()
void main(void)
{
/* 子程序定义部分 */
float getData(void);
void printResult(float num1, float num2, float result, int option);
int getOption(void);
float calc(int option, float num1, float num2);
/* 局部变量定义部分 */
int option ;
float num1 ;
float num2 ;
float result ;
while ((option = getOption( )) != 5) {
num1 = getData();
num2 = getData();
result = calc ( option, num1, num2 ) ;
printResult ( num1, num2, result, option ) ;
fflush(stdin); //清除输入缓冲区
}
cout << "\n谢谢使用这个程序! " << endl;
} //主程序结束
/* ================== 菜单选择子程序 ================== */
//这个子程序让用户选择菜单。
int getOption(void)
{
/* 定义局部变量 */
int option ;
cout << "\n";
cout << "\n\t**********************************";
cout << "\n\t* 菜单 *";
cout << "\n\t* *";
cout << "\n\t* 1. 加法 *";
cout << "\n\t* 2. 减法 *";
cout << "\n\t* 3. 乘法 *";
cout << "\n\t* 4. 除法 *";
cout << "\n\t* 5. 结束程序 *";
cout << "\n\t* *";
cout << "\n\t**********************************";
cout << "\n\n请输入你的选择然后按下回车键 ";
cin >> option;
return option ;
} //菜单选择子程序结束
//================== 输入数据子程序 getData ==================
//这个子程序接受用户从键盘输入的数据,并将数据返回到调用程序中。
float getData(void)
{
float data;
cout << "\n输入一个数值: ";
cin >> data;
return data;
} //子程序 getData 结束
/* ================== 子程序 calc ================== */
//这个子程序用来确定用户选择的是什么计算操作,并调用相应计算子程序。
float calc(int option, float num1, float num2)
{
/* 定义局部子程序 */
float add(float num1, float num2);
float sub(float num1, float num2);
float mul(float num1, float num2);
float dvd(float num1, float num2);
/* 定义局部变量 */
float result ;
switch (option) {
case 1 : result = add (num1, num2) ;
break ;
case 2 : result = sub (num1, num2) ;
break ;
case 3 : result = mul (num1, num2) ;
break ;
case 4 : if (num2 == 0.0) {
cout << "\n\a\a错误计算: ";
cout << "分母为零 *** " << endl;
exit ( 1 ) ;
}
else
result = dvd ( num1, num2 ) ;
break ;
default: cout << "\a错误计算选择" << endl;
exit ( 1 ) ;
} //开关语句结束
return result ;
} //计算子程序结束
/* ================== 子程序 add ================== */
//这个子程序进行加法计算。
float add(float num1, float num2)
{
/* 定义局部变量 */
float res ;
res = num1 + num2 ;
return res ;
} /* 子程序 add 结束*/
/* ================== 子程序 sub ================== */
//这个子程序进行减法计算。
float sub(float num1, float num2)
{
/* 定义局部变量 */
float res ;
res = num1 - num2;
return res ;
} /* 子程序 sub 结束*/
/* ==================子程序 mul ================== */
//这个子程序进行乘法计算。
float mul(float num1, float num2)
{
/* 定义局部变量 */
float res ;
res = num1 * num2 ;
return res ;
} /* 子程序 mul结束 */
/* ================== 子程序 dvd ================== */
//这个子程序进行除法计算。
float dvd(float num1, float num2)
{
/* 定义局部变量 */
float res ;
res = num1 / num2 ;
return res ;
} /* 子程序 dvd 结束 */
/* ================== 子程序 printResult ================== */
//这个子程序输出计算结果。
void printResult(float num1, float num2, float res, int option)
{
cout << endl << num1;
switch (option) {
case 1 : cout << " + "; break ;
case 2 : cout << " - "; break ;
case 3 : cout << " * "; break ;
case 4 : cout << " / "; break ;
}
cout << num2 << " = " << res << endl;
return ;
} /* 子程序 printResults 结束 */
/* ================== 程序结束 ================== */
/*下面是这个程序运行后的一个典型输出结果:
**********************************
* 菜单 *
* *
* 1. 加法 *
* 2. 减法 *
* 3. 乘法 *
* 4. 除法 *
* 5. 结束程序 *
* *
**********************************
请输入你的选择然后按下回车键 3
输入一个数值: 2.34
输入一个数值: 5.098
2.34 * 5.098 = 11.9293
**********************************
* 菜单 *
* *
* 1. 加法 *
* 2. 减法 *
* 3. 乘法 *
* 4. 除法 *
* 5. 结束程序 *
* *
**********************************
请输入你的选择然后按下回车键 5
谢谢使用这个程序!
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -