2 条题解
-
1
using namespace std; struct st { string name;//姓名 int qm, bj;//期末、班级评议 char gb, xb;//干部、西部 int lw;//论文 } s[101]; int main() { int n, maxi, maxx = 0, total = 0;//引入学生数量、最高、总分 cin >> n; for (int i = 1; i <= n; i++) { int jxj = 0;//创建变量奖学金 cin >> s[i].name >> s[i].qm >> s[i].bj >> s[i].gb >> s[i].xb >> s[i].lw;//记录基本信息和姓名 if (s[i].qm > 80 && s[i].lw >= 1)//判断是否达到博士奖 { jxj+=8000; } if (s[i].qm > 85 && s[i].bj > 80)//判断是否达到五四奖 { jxj+=4000; } if (s[i].qm > 90)//判断是否达到成绩优秀奖 { jxj+=2000; } if (s[i].qm > 85 && s[i].xb == 'Y')//判断是否达到西部奖 { jxj+=1000; } if (s[i].qm > 85 && s[i].bj > 80)//判断是否达到班级贡献奖 { jxj+=850; }; if (maxx < jxj) maxx = jxj, maxi = i; total += jxj;//判断出谁奖学金最高 } cout << s[maxi].name << endl;//输出 cout << maxx << endl; cout << total; return 0; }
-
0
#include <iostream> using namespace std; struct st { string name;//姓名 int qm, bj;//期末、班级评议 char gb, west;//干部、西部 int lw;//论文 } s[101]; //s[0]~s[100] 都是一个 st 类型的变量 int main() { int n, maxi, maxx = 0, total = 0; cin >> n; for (int i = 1; i <= n; i++) { int sum = 0; cin >> s[i].name >> s[i].qm >> s[i].bj >> s[i].gb >> s[i].west >> s[i].lw; if (s[i].qm > 80 && s[i].lw >= 1) sum += 8000; if (s[i].qm > 85 && s[i].bj > 80) sum += 4000; if (s[i].qm > 90) sum += 2000; if (s[i].west == 'Y' && s[i].qm > 85) sum += 1000; if (s[i].gb == 'Y' && s[i].bj > 80) sum += 850; if (maxx < sum) maxx = sum, maxi = i; total += sum; } cout << s[maxi].name << endl << maxx << endl << total; return 0; }
- 1
信息
- ID
- 1223
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 4
- 标签
- 递交数
- 94
- 已通过
- 42
- 上传者