exercise6_6.cpp
来源: 分支语句和逻辑运算符
点击上方按钮打开代码编辑器和可视化视图
⚠️ 交互式运行提示
为了防止网页挂起,所有 cin 输入语句已被自动注释。请直接在代码编辑器中修改变量的值来进行测试。
课后练习参考答案
原始代码预览
// Create by Shujia Huang on 2021-08-03
#include <iostream>
#include <string>
int main() {
using namespace std;
const int Grand_Amount = 10000;
struct Patron {
string name;
double amount;
};
int contribute_num = 0;
cout << "Enter the number of contributor: ";
cin >> contribute_num;
cin.get(); // 读取输入流中的回车符
Patron *p_contribution = new Patron [contribute_num];
for (int i = 0; i < contribute_num; ++i) {
cout << "Enter the name of " << i + 1 << " contributor: ";
getline(cin, p_contribution[i].name);
cout << "Enter the amount of donation: ";
cin >> p_contribution[i].amount;
cin.get(); // 读取输入流中的回车符
}
unsigned int grand_amount_n = 0;
cout << "\nGrand patron: " << endl;
for (int i = 0; i < contribute_num; ++i) {
if (p_contribution[i].amount > Grand_Amount) {
cout << "Contributor name: " << p_contribution[i].name << "\n"
<< "Contributor amount: " << p_contribution[i].amount << endl;
++grand_amount_n;
}
}
if (grand_amount_n == 0) {
cout << "None" << endl;
}
bool is_empty = true;
cout << "\nPatrons: " << endl;
for (int i=0; i < contribute_num; ++i) {
cout << "Contributor name: " << p_contribution[i].name << "\n"
<< "Contributor amount: " << p_contribution[i].amount << endl;
is_empty = false;
}
if (is_empty) {
cout << "** None **" << endl;
}
delete [] p_contribution;
return 0;
}
运行结果 / 调试信息
等待编译...
Graph loading...
0 / 0