您的位置:首页 > 编程语言 > C语言/C++

程序设计基础(C&C++) 戴波、张东祥 第六章 函数 编程作业

2016-12-09 00:17 633 查看

1函数实现学生管理系统(100分)

题目内容:

使用函数编写学生管理系统

其中学生的信息有姓名(汉语拼音,最多20个字符),性别(男/女,用1表示男,0表示女)、

生日(19850101(年月日))、身高(以m为单位),还需要处理C语言、微积分两门课的成绩

请分别编写以下函数实现功能:

输入学生的人数和每个学生的信息;

统计每门课程的总平均成绩、最高分和最低分,以及获得最高分的学生的信息。

输出统计信息.

需要注意的是某门课程最高分的学生可能不只一人。

输入输出格式要求:

身高输出时保留两位小数,请按照例子中进行输出,请勿输出其他字符

例如:

输入:

3 zhangsan 1 19910101 1.85 85 90 lisi 1 19920202 1.56 89 88 wangwu 2 19910303 1.6 89 90

输出:

C_average:87

C_max:89

lisi 1 19920202 1.56 89 88

wangwu 2 19910303 1.60 89 90

C_min:85

Calculus_average:89

Calculus_max:90

zhangsan 1 19910101 1.85 85 90

wangwu 2 19910303 1.60 89 90

Calculus_min:88

参考代码

#include <stdio.h>
#include <string.h>
struct Node{
char name[25];
int f;
char str[10];
double h;
int l,r;
}P[100];
int main(){
int n;
scanf("%d",&n);
int C_max=0,C_min=100,C_sum=0;
int Ca_max=0,Ca_min=100,Ca_sum=0;
for (int i=0;i<n;i++){
scanf("%s %d %s %lf %d %d",P[i].name,&P[i].f,P[i].str,&P[i].h,&P[i].l,&P[i].r);
if (P[i].l>C_max) C_max=P[i].l;
if (P[i].l<C_min) C_min=P[i].l;
if (P[i].r>Ca_max) Ca_max=P[i].r;
if (P[i].r<Ca_min) Ca_min=P[i].r;
C_sum+=P[i].l;
Ca_sum+=P[i].r;
}
printf("C_average:%d\n",C_sum/n);
printf("C_max:%d\n",C_max);
for (int i=0;i<n;i++){
if (P[i].l==C_max){
printf("%s %d %s %.2f %d %d\n",P[i].name,P[i].f,P[i].str,P[i].h,P[i].l,P[i].r);
}
}
printf("C_min:%d\n",C_min);

printf("Calculus_average:%d\n",Ca_sum/n);
printf("Calculus_max:%d\n",Ca_max);
for (int i=0;i<n;i++){
if (P[i].r==Ca_max){
printf("%s %d %s %.2f %d %d\n",P[i].name,P[i].f,P[i].str,P[i].h,P[i].l,P[i].r);
}
}
printf("Calculus_min:%d\n",Ca_min);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: