学生成绩管理系统课程设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计报告

(本科)

课程:

数据结构

学号:1310441019/1310441031

/1310441064

姓名:

程徐/章燕芳/江淑芬

班级:

2013级计算机科学与技术(嵌入式)教师:

史君华

时间:

2014.12.1—2014.12.30

计算机科学与技术系

结果与分析:

1.选择运行后出现如下界面:

2.输入1即为对数学成绩的分析

3.输入2即为对英语成绩的分析:

4.输入3即为对计算机成绩的分析:

5.个人平均成绩的分析:

6.输入要找的学号和姓名之后:

7.输入不存在的学号的分析:

附录:

程序源代码:

#include

#include

#include

#define N 7

struct student

{

char no[10];//学号

char name[20];//姓名

int math;//数学分数

int english;//英语分数

int computer;//计算机分数

int score;//交换用分数

int eveave;//个人平均分

};

struct student st[N]; //定义学生结构体

void subject(student st[],int n)//选定某个学科进行分析

{

int number;

int temp;

printf(" 请选择要分析的学科: ");

scanf("%d",&number);

int i=0;

switch(number)

{

case 1:

printf(" ★★★★★★★★★以下是关于数学的成绩分析:★★★★★★★★★★\n");

for(i=0;i

st[i].score=st[i].math;

break;

case 2:

printf(" ★★★★★★★★★以下是关于英语的成绩分析:★★★★★★★★★★\n");

for(i=0;i

st[i].score=st[i].english;

break;

case 3:

printf(" ★★★★★★★★★以下是关于计算机成绩分析:★★★★★★★★★★\n");

for(i=0;i

st[i].score=st[i].computer;

break;

}

int j;

printf(" 按学号每个人的原始数据为:\n");

for(i=0;i

printf(" %d\n",st[i].score);

printf(" 排序后的数据为\n");

for(i=0;i

{

for(j=0;j

if(st[j+1].score

{

temp=st[j].score;

st[j].score=st[j+1].score;

st[j+1].score=temp;

}

}

for(i=0;i

printf(" %d\n",st[i].score);

printf(" 该门课的平均成绩为:\n");

float sum=0;

float courseave;

for(i=0;i

{

sum=sum+st[i].score;

}

courseave=sum/7;

printf(" %f\n",courseave);

printf(" 该门课的最高分为:\n");

int max=st[0].score;

for(i=0;i

{

if(st[i].score>max)

{

max=st[i].score;

}

}

printf(" %d\n",max);//最高分

printf(" 该门课的最低分为:\n");

int min=st[0].score;

for(i=0;i

{

if(st[i].score

{

min=st[i].score;

}

}

printf(" %d\n",min);//最低分

int bjg=0;

int jg=0;

int zd=0;

int lh=0;

int yx=0;

for(i=0;i

{

if(st[i].score<60) //计算不及格人数

{

bjg++;

}

if(st[i].score>=60&&st[i].score<70)//计算60~69人数

{

jg++;

}

if(st[i].score>=70&&st[i].score<80)//计算70~79人数

{

zd++;

}

if(st[i].score>=80&&st[i].score<90)//计算80~89人数

{

lh++;

}

if(st[i].score>=90)//计算90分以上人数

{

yx++;

}

}

printf(" 该门课的不及格人数为:\n %d\n 60~69人数:\n %d\n 70~79人数:\n %d\n 80~89人数:\n %d\n 90分以上人数:\n %d\n",bjg,jg,zd,lh,yx);

}

void studentave(student st[],int n)//计算每个人的平均成绩并排序

{

int i;

相关文档
最新文档