多科成绩单
来源:互联网 发布:php上传任意文件 编辑:程序博客网 时间:2024/06/10 01:17
上机内容:多科成绩,二维加函数
上机目的:学习
/* * Copyright (c) 2012, 烟台大学计算机学院 * All rights reserved. * 作 者:刘杰 * 完成日期:2012 年12 月9 日 * 版 本 号:v1.0 * 输入描述:无* 问题描述:无* 程序输出:无* 问题分析:无* 算法设计:略 */ #include <iostream> #include <string> #include <cmath> double get_max_score(double a[][5],int num,int j); double get_min_score(double a[][5],int num,int j); double get_avg_score(double a[][5],int num,int j); double get_stdev_score(double a[][5],int num,int j); output_score(double a[][5],int num); using namespace std; int main() { int i,j,m,n,num; double score,a[1000][5]; string b[5]={"学号","高数","英语","c++","总成绩"}; cout<<"请输入学生数量:"; cin>>num; for(i=0;i<num;i++) { cout<<"请依次输入学号为"<<i<<"学生的高数,英语,c++成绩:"; a[i][0]=i; for(j=1;j<4;j++) { cin>>score; a[i][j]=score; } a[i][4]=a[i][1]+a[i][2]+a[i][3]; } cout<<b[0]<<'\t'<<b[1]<<'\t'<<b[2]<<'\t'<<b[3]<<'\t'<<b[4]<<"\n"; for(n=0;n<num;n++) { cout<<"\n"; for(m=0;m<5;m++){ cout<<a[n][m]<<'\t'; } } cout<<"\n"; for(i=1;i<4;i++) { cout<<b[i]<<"的最高成绩"<<get_max_score(a,num,i)<<","; cout<<"最低成绩是"<<get_min_score(a,num,i)<<", "; cout<<"平均成绩是"<<get_avg_score(a,num,i)<<", "; cout<<"成绩的标准偏差是"<<get_stdev_score(a,num,i)<<endl; } output_score(a,num); cout<<"\n"; return 0; } double get_max_score(double a[][5],int num,int j) { int i; double max; max=-1; for(i=0;i<num;i++) { if(a[i][j]>max) { max=a[i][j]; } } return max; } double get_min_score(double a[][5],int num,int j) { int i; double min=100000; for(i=0;i<num;i++) { if(a[i][j]<min) { min=a[i][j]; } } return min; } double get_avg_score(double a[][5],int num,int j) { int sum=0,i; for(i=0;i<num;i++) { sum+=a[i][j]; } return sum/num;} double get_stdev_score(double a[][5],int num,int j) { int i; double b,x,sum=0; b=get_avg_score(a,num,j); for( i=0;i<num;i++) { x=a[i][j]-b; sum+=x*x; } return sqrt(sum/(num-1)); } output_score(double a[][5],int num) { double max=get_max_score(a,num,4); int i,c=0; bool first=true; cout<<"总分最高分为"<<max; for(i=0;i<num;++i) { if(a[i][4]==max) ++c; } cout<<",有"<<c<<"人达到最高分,学号是:"; for(i=0;i<num;++i) { if(a[i][4]==max) if(first) { cout<<i; first=false; } else { cout<<"、"<<i; } } cout<<endl; double min=get_min_score(a,num,4); c=0; first=true; cout<<"总分最低分为"<<min; for(i=0;i<num;++i) { if(a[i][4]==min) ++c; } cout<<",有"<<c<<"人达到最低分,他们的学号是:"; for(i=0;i<num;++i) { if(a[i][4]==min) if(first) { cout<<i; first=false; } else { cout<<"、"<<i; } } cout<<endl; }
运行结果:
- 多科成绩单
- 多科成绩单
- 多科成绩单--char5
- 多科成绩单【一】
- 多科成绩单
- 多科成绩单
- 多科成绩单
- 多科成绩单【二】
- 多科成绩单
- 多科成绩单
- 多科成绩单
- 多科成绩单
- 多科成绩单
- 15_4多科成绩单
- 第十五周 多科成绩单
- 项目4 多科成绩单
- 15--4多科成绩单
- 多科成绩单(必看啊)
- 朴素贝叶斯算法入门
- Time_wait句柄
- ListView多次调用getView方法
- 学习c++的必看!!!
- 用栈逆置一个线性表
- 多科成绩单
- 心中的顽石
- C++ Primer 9.40习题 计算sentence有多少个单词,并输出最长、最短的单词d
- 人生絮语
- 杭电OJ 题 1209 Clock 解题报告
- 行为识别特征提取综述
- 轮询注册表
- 树操作
- linuxmint mysql使用