第2章练习题--7--谁拿了最多奖学金--2715
2011-10-28 16:36
295 查看
#include <stdio.h> #include <stdlib.h> #include<string.h> struct Student { char sName[20]; int avgScore; int evaScore; char leader; char west; int paperNum; int totalScholar; }; int isYuanShi(struct Student s) { if(s.avgScore>80&&s.paperNum>=1) return 8000; else return 0; } int isWuSi(struct Student s) { if(s.avgScore>85&&s.evaScore>80) return 4000; else return 0; } int isYouXiu(struct Student s) { if(s.avgScore>90) return 2000; else return 0; } int isWest(struct Student s) { if(s.avgScore>85&&s.west=='Y') return 1000; else return 0; } int isGongXian(struct Student s) { if(s.evaScore>80&&s.leader=='Y') return 850; else return 0; } int main(int argc, char *argv[]) { struct Student s[101]; int n,maxS,maxMoney,total; int i; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%s %d %d %c %c %d",&s[i].sName,&s[i].avgScore,&s[i].evaScore,&s[i].leader,&s[i].west,&s[i].paperNum); s[i].totalScholar=isYuanShi(s[i])+isWuSi(s[i])+isYouXiu(s[i])+isWest(s[i])+isGongXian(s[i]); } maxS=maxMoney=total=0; for(i=0;i<n;i++) { total += s[i].totalScholar; if(s[i].totalScholar>maxMoney) { maxMoney = s[i].totalScholar; maxS = i; } } printf("%s\n",s[maxS].sName); printf("%d\n",s[maxS].totalScholar); printf("%d\n",total); system("PAUSE"); return 0; }
相关文章推荐
- poj 百练 2715:谁拿了最多奖学金
- 百练_2715:谁拿了最多奖学金
- 2715:谁拿了最多奖学金
- 百练2715:谁拿了最多奖学金
- poj百炼&nbsp;2715:谁拿了最多奖学金
- POJ 2715 谁拿了最多奖学金 解题报告
- Vijos P1001 谁拿了最多奖学金【分段计算处理】(Bailian2715)
- 第2章第1节练习题3 共享栈的基本操作
- 第2章练习题
- 哈理工OJ 1219 谁拿了最多奖学金
- 【Tyvj】P1002 谁拿了最多奖学金【某下午刷水题系列】
- 谁拿了最多奖学金
- Vijos P1001 谁拿了最多奖学金
- Vijos 1001题:谁拿了最多奖学金
- Java编程思想 第4版 练习题 / 第2章 一切都是对象 / 练习5
- 第2章练习题--10--密码--2818
- 谁拿了最多的奖学金
- 【牛客网】直通bat-面试算法精品课_第2章 排序 2.10 计数排序练习题(JAVA版)
- 洛谷1051 谁拿了最多的奖学金 (2005 noip tg)
- NOIP2005 提高组第一题 谁拿了最多奖学金