广西网站建设开发外包,合肥瑶海区网站建设方案,wordpress主题信息怎么修改,网站内容建设的布局和结构某班有最多不超过30人#xff08;具体人数由键盘输入#xff09;参加某门课程的考试#xff0c;参考前面章节的“学生成绩管理系统V1.0”#xff0c;用一维数组和函数指针作函数参数编程实现如下菜单驱动的学生成绩管理系统#xff0c;其中每位同学的学号和成绩等数据可以…某班有最多不超过30人具体人数由键盘输入参加某门课程的考试参考前面章节的“学生成绩管理系统V1.0”用一维数组和函数指针作函数参数编程实现如下菜单驱动的学生成绩管理系统其中每位同学的学号和成绩等数据可以通过不同数组的同一下标来关联
1录入每个学生的学号和考试成绩
2计算课程的总分和平均分
3按成绩由高到低排出名次表
4按成绩由低到高排出名次表
5按学号由小到大排出成绩表
6按学号查询学生排名及其考试成绩
7按优秀90~100、良好80~89、中等70~79、及格60~69、不及格0~595个类别统计每个类别的人数以及所占的百分比
8输出每个学生的学号、考试成绩。 这里只用函数指针来做函数参数。
#include iostream
#include iomanip
using namespace std;
void input(int*, float*,int*);
void caculate(float*,int*);
void sort_in_descending_order_by_score(int*, float* ,int*);
void sort_in_ascending_order_by_score(int*, float*, int*);
void sort_in_ascending_order_by_number(int* ,float* ,int*);
void search(int* ,float* ,int*);
void statistic(float* ,int *);
int main()
{int n;cout Input student number(n30):;cin n;int choice;int xvehao[30];float score[30];int* p1 n, * p2 xvehao;float *p3 score;while (1){cout endl;cout Management for Students scores endl;cout 1.Input record endl;cout 2.Caculate total and average score of course endl;cout 3.Sort in descending order by score endl;cout 4.Sort in ascending order by score endl;cout 5.Sort in ascending order by number endl;cout 6.Search by number endl;cout 7.Statistic analysis endl;cout 8.List record endl;cout 0.Exit endl;cout Please Input your choice:;cin choice;if (choice 1)input(p2, p3, p1);else if (choice 2)caculate(p3, p1);else if (choice 3)sort_in_descending_order_by_score(p2, p3, p1);else if (choice 4)sort_in_ascending_order_by_score(p2, p3, p1);else if (choice 5)sort_in_ascending_order_by_number(p2, p3, p1);else if (choice 6)search(p2, p3, p1);else if (choice 7)statistic(p3, p1);else if (choice 8)sort_in_ascending_order_by_number(p2, p3, p1);else if (choice 0)break;else{cout Please input any number from 0 to 8!endl; continue;}}return 0;
}
void input(int *p2, float *p3,int *p1)
{int i;cout Input students ID, name and score: endl;for (i 1; i *p1; i){cin *(p2i) *(p3i);}}
void caculate(float *p3, int *p1)
{float sum0,aver;int i;for (i 1; i *p1; i){sum *(p3i);}aver sum / *p1;cout sum sum , aver fixed setprecision(2) aver;cout endl;
}
void sort_in_descending_order_by_score(int *p2, float *p3, int *p1)
{int i, j,k;for (i 1; i *p1; i){k i;for (j i1; j *p1 ; j){if (*(p3k) *(p3j))k j;}int x *(p2i), y *(p3i);*(p2 i) *(p2 k); *(p3 i) *(p3 k);*(p2 k) x; *(p3 k) y;}for (i 1; i *p1; i){cout *(p2i) *(p3i) endl;}
}
void sort_in_ascending_order_by_score(int*p2, float*p3, int*p1)
{int i, j, k;for (i 1; i *p1; i){k i;for (j i 1; j *p1; j){if (*(p3 k) *(p3 j))k j;}int x *(p2 i), y *(p3 i);*(p2 i) *(p2 k); *(p3 i) *(p3 k);*(p2 k) x; *(p3 k) y;}for (i 1; i *p1; i){cout *(p2 i) *(p3 i) endl;}
}
void sort_in_ascending_order_by_number(int *p2, float *p3, int *p1)
{int i, j,k;for (i 1; i *p1; i){k i;for (j i 1; j *p1; j){if (*(p2j) *(p2k))k j;}int x *(p2i), y *(p3i);*(p2 i) *(p2 k); *(p3 i) *(p3 k);*(p2 k) x; *(p3 k) y;}for (i 1; i *p1; i){cout *(p2 i) *(p3 i) endl;}
}
void search(int *p2, float *p3, int *p1)
{int number;cin number;int i,k;for (i 1; i *p1; i){if (*(p2i) number){cout *(p2 i) *(p3 i) endl;k 1;break;}else k 0;}if (k 0)cout Cant find this student!endl;
}
void statistic(float *p3, int *p1)
{int i;int A 0, B 0, C 0, D 0, E 0, F 0;for (i 1; i *p1; i){if (*(p3i) 100)A;else if (*(p3 i) 90 *(p3 i) 99)B;else if (*(p3 i) 80 *(p3 i) 89)C;else if (*(p3 i) 70 *(p3 i) 79)D;else if (*(p3 i) 60 *(p3 i) 69)E;else F;}cout 60 F fixedsetprecision(2) ((float)F / *p1) * 100 % endl;cout 60-69 E fixed setprecision(2) ((float)E / *p1) * 100 % endl;cout 70-79 D fixed setprecision(2) ((float)D / *p1) * 100 % endl;cout 80-89 C fixed setprecision(2) ((float)C / *p1) *100 %endl;cout 90-99 B fixed setprecision(2) ((float)B / *p1) * 100 % endl;cout 100 A fixed setprecision(2) ((float)A / *p1) * 100 % endl;
}