Hold On, Pain Ends.

问题及代码:/* *Copyright (c)2015,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:score.cpp *作 者:单昕昕 *完成日期:2015年2月22日 *版 本 号:v1.0 * *问题描述:大奖赛计分系统(实用版)*程序输入:选手、裁判人数,,选手分数等。*程序输出:分数及排名等。 */ #include <iostream>#include <iomanip>#include <cstdio>using namespace std;double s[1000][20];void input_mark(int m,int n,double s[][20],double p,double q);void sort1(int m,int n,double s[][20]);void sort2(int m,int n,double f[][2]);void output_mark(int m,int n,double s[][20]);void calculate_mark(int max,int min,double s[][20],int x,double f[][2]);int main(){int m,n,x;cout<<"请输入评委的人数:";cin>>m;cout<<"请输入选手的人数:";cin>>n;double max,min,f[n][2];cout<<"——————————————————————"<<endl;cout<<"请输入打分范围:"<<endl;cout<<"——————————————————————"<<endl;cout<<"最低分:";cin>>min;cout<<"最高分:";cin>>max;cout<<"请输入选手的成绩:"<<endl;input_mark(m,n,s,min,max);cout<<"选手成绩降序排列如下:"<<endl;sort1(m,n,s);output_mark(m,n,s);cout<<"请输入要去掉的最值数目:";cin>>x;calculate_mark(m,n,s,x,f);cout<<"选手的最终排名为:"<<endl;sort2(m,n,f);return 0;}void input_mark(int m,int n,double s[][20],double p,double q){int i,j;for(i=0; i<n; i++){cout<<"选手"<<i<<":";for(j=0; j<m;){cin>>s[i][j];if(s[i][j]>=p&&s[i][j]<=q){++j;}else{cout<<"分数不在正确的范围内,请检查并请重新输入该选手的成绩"<<endl;j–;}}}}void sort1(int m,int n,double s[][20]){int i,j,k;double t;for(k=0; k<n; k++)for(j=0; j<=m-1; j++)for(i=0; i<m-j-1; i++)if (s[k][i]<s[k][i+1]){t=s[k][i];s[k][i]=s[k][i+1];s[k][i+1]=t;}}void output_mark(int m,int n,double s[][20]){int i,j;for(i=0; i<n; ++i){cout<<"选手"<<i<<":";for(j=0; j<m; ++j)cout<<s[i][j]<<'\t';cout<<endl;}}void calculate_mark(int m,int n,double s[][20],int x,double f[][2]){double sum;int i,j;for(i=0; i<n; ++i)f[i][0]=i;for(i=0; i<n; ++i){sum=0;for(j=x; j<m; ++j){sum+=s[i][j];}cout<<"选手"<<i<<"得分是:"<<(sum/(m-x))<<"分"<<endl;f[i][1]=sum/(m-x);}}void sort2(int m,int n,double f[][2]){int i,j,k;double t;for(j=0; j<=m-1; j++)for(i=0; i<m-j-1; i++)if (f[i][1]<f[i+1][1]){t=f[i][1];f[i][1]=f[i+1][1];f[i+1][1]=t;k=f[i][0];f[i][0]=f[i+1][0];f[i+1][0]=k;}for(i=0; i<n; ++i)cout<<"第"<<i<<"名:"<<"选手"<<f[i][0]<<endl;}运行结果:

知识点总结:

吐血。。好多函数。。

注意对应。。

学习心得:

一定要耐下心啊啊啊~~~

二维数组作函数参数的时候一定要固定好第二维。。

当你感到悲哀痛苦时,最好是去学些什么东西。

Hold On, Pain Ends.

相关文章:

你感兴趣的文章:

标签云: