12.1
2015-12-01 18:30
337 查看
#include <stdio.h> #include<string.h> #include <stdlib.h> #define N 5 #define M 3 int login() { char secretCode[10],name[8]; int number=3; printf("\n\n"); printf("\t\t\t******欢迎使用青歌赛评分系统******\n"); printf("\n\n"); printf("请输入用户名"); scanf("%s",name); printf("请输入密码 :"); scanf("%s",secretCode); while(number>0) { if(strcmp(secretCode,"789456123")==0&&strcmp(name,"王晓华")==0)break; else { number--; if(number<=0)break; printf("\n\t\t\t您还有%d次机会\n",number); printf("请输入用户名"); scanf("%s",name); printf("请输入密码:"); scanf("%s",secretCode); } } if(number>0) return 1; else printf("\t\t\t很遗憾,欢迎改日使用\n"); return 0; } int main(void) { char name[5][8],n[8]; float a [M],sum,t,max,min,avg ; int i,j; setvbuf(stdout, NULL, _IONBF, 0); if(login()==0)return 1; printf("\t欢迎使用青歌赛评分系统\n"); getchar(); system("cls"); for(i=0;i<M;i++) { sum=0; min=120; max=0; printf("请输入第%d位选手的姓名:",i+1); scanf("%s",name[i]); for(j=0;j<N;j++) { printf("请输入第%d位评委的打分:",j+1); scanf("%f",&a[i][j]); sum+=a[i][j]; if(a[i][j]<min) min=a[i][j]; if(a[i][j]>max) max=a[i][j]; } avg[i]=(sum-max-min)/3; printf("第%d位选手%s的最终成绩为%.2f\n",i+1,name[i],avg[i]); system("pause"); system("cls"); } for(i=0;i<N-1;i++) for(j=i+1;j<N;j++) if(avg[j]>avg[i]) { t=avg[j]; avg[j]=avg[i]; avg[i]=t; strcpy(n,name[j]); strcpy(name[j],name[i]); strcpy(name[i],n); } printf("名次 姓名 分数\n"); printf("第%d位选手的最终成绩为%.2f\n",i+1,avg[i]); return EXIT_SUCCESS; }
相关文章推荐
- 阮郎归·黄山之三
- WIFI之升级协议列表
- SNMP中MIB语法解释
- bzoj 2120 数颜色 树状数组套平衡树
- handleOpenUrl && openUrl
- 监控Linux性能的18个命令行工具
- GC(Garbage Collection)对应用性能的影响
- 界面出现奇怪的动画,各种移动效果
- contest20151130
- 对递归执行过程的简单描述
- 每天一个linux命令(3):last命令
- 扣丁学堂——自定义组件
- WIFI之Agent调度关系
- 蓝桥杯OJ刷题日记——05-基础练习 查找整数
- IE7局部滚动区域下绝对定位或相对定位元素不随滚动条滚动的bug
- Android 换肤功能的实现(Apk插件方式)
- 输入一串数字遇到#时逆着输出
- 对数字媒体和传媒的一些思考
- 将Eclipse代码导入到AndroidStudio的两种方式
- vector的swap()成员函数——可以释放内存空间和休整内存空间