C++输入函数和成绩显示函数,并计算每位同学的总分和平均分,对成绩排名输出等
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C++程序设计
Luozhengchun
编写C++程序完成某班学生考试成绩的统计管理,包括成绩的输入函数和成绩显示函数,并计算每位同学的总分和平均分,对成绩排名输出。
#include
#include
#include
#define N 10 /*宏定义,设定班里学生的个数*/
void main_mun(); /*输入学生的成绩*/
void input(); /*显示学生的成绩*/
void output(); /*计算学生的平均成绩*/
void average(); /*计算学生的总成绩*/
void sum_score(); /*对学生的成绩进行排名*/
void sort();
char student[N+1][12]={"王非","李丽","刘红","张伟","陈雷","赵丹","罗冰","
钱惠云","孙杨","周正","差无此人"}; /*用来记录学生的姓名*/
float score[N][4]; /*用来记录学生的各门成绩(数学、语文、英语、政治)*/
float aver[N]; /*用来记录学生的平均成绩*/
float sum_sc[N]; /*用来记录学生的总成绩*/
int sor[N]; /*用来记录每个学生排名情况*/
int main()
{
int in; /*输入的选择转换成整数*/
int i,j; /*程序循环所用变量*/
char select[6]; /*用于主菜单选择的字符*/
for (i=0; i for (j=0; j<4; j++) score[i][j]=0.00; printf("学生考试成绩的统计管理\n"); main_mun(); gets(select); while ((strcmp(select,"q")!=0)&&(strcmp(select,"Q")!=0)) { in=atoi(select); /*将输入的字符串转换成整数*/ if( in != 0) { switch (in) { case 1: { input(); break; } case 2: { output(); break; } case 3: { average(); break; } case 4: { sum_score(); break; } case 5: { sort(); break; } default: printf("输入的选择有错,请重输!\n"); } main_mun(); } gets(select); } printf("管理系统结束!!\n"); return 0; } /*学生考试成绩的统计管理主菜单*/ void main_mun() { printf("1: 输入学生的成绩\n"); printf("2: 显示学生的成绩\n"); printf("3: 计算学生的平均成绩\n"); printf("4: 计算学生的总成绩\n"); printf("5: 根据学生成绩排名次\n"); printf("请输入你的选择:(q(Q)退出)\n"); } /*输入学生的成绩*/ void input() { float sc[4]; /*输入成绩的中间变量*/ int number; /*表示学号*/ int flag=0; /*输入成绩是否有误的标志*/ int i; printf("输入学号:\n"); /*循环控制变量*/ printf("输入学生的成绩:\n"); scanf("%d",&number); while((number<0)||(number>N)) { printf("输入学号有误.\n"); return; } printf("输入学生%s的成绩\n",student[number]); printf("数学、语文、英语、政治\n"); scanf("%f%f%f%f",&sc[0],&sc[1],&sc[2],&sc[3]); getchar(); /*判断成绩输入是否越界*/ for (i=0; i<4; i++) if ((sc[i]>100.00)||(sc[i]<0.00)) { flag=1; printf("输入成绩有误!!\n"); return; } /*成绩未越界后,进行赋值*/ for (i=0; i<4; i++) score[number][i]=sc[i]; } /*显示学生的成绩*/ void output() { int i; /*循环控制变量*/ for(i=0;i { printf("输出%s各门成绩:\n数学、语文、英语、政治\n",student[i]);