显示一个编程文本菜单,当选择1时(即输入1) 计算A4纸黑白复印费,根据输入的 数量,计算并显示相应的复印费, 按任意键返回菜单;当选择2时(即输入 2) 计算A3纸黑白复印费,根据输入的数量, 计算并显示相应的复印费,按任意键返 回菜单;当选择0时(即输入0)退出系统。用s witch语句实现详细VC6.0编程代码。复印价格表如下:A4纸复印单价格不超过20张为0.5元,超过20张到50张到部分为0.4元,超过50张到100张的部分为0.3元,超过100张的部分为0.2元。A3纸复印单价格不超过20张为0.8元,超过20张到50张到部分为0.7元,超过50张到100张的部分为0.6元,超过100张的部分为0.5元。每一句都有详细解释
时间: 2024-03-10 16:50:44 浏览: 77
以下是VC6.0编程代码:
```cpp
#include <iostream>
using namespace std;
int main()
{
int choice;
char size;
int num;
double price;
do { // 使用 do-while 循环显示菜单,直到用户选择退出
cout << "请选择操作:" << endl;
cout << "1. 计算A4纸黑白复印费" << endl;
cout << "2. 计算A3纸黑白复印费" << endl;
cout << "0. 退出系统" << endl;
cin >> choice;
switch (choice) {
case 0: // 用户选择退出
cout << "感谢使用,再见!" << endl;
break;
case 1: // 用户选择计算A4纸黑白复印费
cout << "请输入A4纸复印数量:" << endl;
cin >> num;
if (num <= 0) { // 处理无效输入
cout << "输入无效,请重新输入!" << endl;
break;
}
if (num <= 20) { // 不超过20张
price = num * 0.5;
} else if (num <= 50) { // 超过20张到50张
price = 20 * 0.5 + (num - 20) * 0.4;
} else if (num <= 100) { // 超过50张到100张
price = 20 * 0.5 + 30 * 0.4 + (num - 50) * 0.3;
} else { // 超过100张
price = 20 * 0.5 + 30 * 0.4 + 50 * 0.3 + (num - 100) * 0.2;
}
cout << "复印" << num << "张A4纸的价格为:" << price << "元" << endl;
break;
case 2: // 用户选择计算A3纸黑白复印费
cout << "请输入A3纸复印数量:" << endl;
cin >> num;
if (num <= 0) { // 处理无效输入
cout << "输入无效,请重新输入!" << endl;
break;
}
if (num <= 20) { // 不超过20张
price = num * 0.8;
} else if (num <= 50) { // 超过20张到50张
price = 20 * 0.8 + (num - 20) * 0.7;
} else if (num <= 100) { // 超过50张到100张
price = 20 * 0.8 + 30 * 0.7 + (num - 50) * 0.6;
} else { // 超过100张
price = 20 * 0.8 + 30 * 0.7 + 50 * 0.6 + (num - 100) * 0.5;
}
cout << "复印" << num << "张A3纸的价格为:" << price << "元" << endl;
break;
default: // 处理无效选择
cout << "选择无效,请重新选择!" << endl;
break;
}
cout << endl;
} while (choice != 0);
return 0;
}
```
程序使用 do-while 循环显示菜单,直到用户选择退出。在菜单中,用户可以选择计算 A4 纸黑白复印费、计算 A3 纸黑白复印费或退出系统。
在 switch 语句中,根据用户的选择进行相应的操作。当用户选择退出时,输出感谢信息并结束程序。当用户选择计算 A4 纸黑白复印费或计算 A3 纸黑白复印费时,分别提示用户输入复印数量,然后根据数量计算复印费,并输出结果。如果用户输入的数量无效,则输出相应提示信息。
在计算复印费时,使用 if-else 语句判断数量是否小于等于 20 张、小于等于 50 张、小于等于 100 张,或者超过 100 张,并根据不同情况采用不同的计算公式。
最后,每次操作结束后,使用 cout 语句输出空行,以便下一次操作清晰可见。
总的来说,这个程序使用 switch 和 if-else 语句实现了一个简单的计算复印费的系统,处理了无效输入和无效选择的情况。
阅读全文