C语言实验报告参考模板

上传人:汽*** 文档编号:506571771 上传时间:2024-01-22 格式:DOC 页数:27 大小:165KB
返回 下载 相关 举报
C语言实验报告参考模板_第1页
第1页 / 共27页
C语言实验报告参考模板_第2页
第2页 / 共27页
C语言实验报告参考模板_第3页
第3页 / 共27页
C语言实验报告参考模板_第4页
第4页 / 共27页
C语言实验报告参考模板_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《C语言实验报告参考模板》由会员分享,可在线阅读,更多相关《C语言实验报告参考模板(27页珍藏版)》请在金锄头文库上搜索。

1、C语言程序设计实训1报告设 计 题 目: 基于数组的学生信息管理系统 学 院 名 称: 信息科学技术学院 / 专 业: 计算机科学与技术 班 级: 姓 名: 学 号 指 导 教 师: 提 交 日 期: 2014年12月22日 一、实验内容编写并调试程序,实现学校各专业班级学生信息的管理。10个学生的信息存储在文件studentInit.dat中。在头文件student.h中定义学生信息的结构体类型,包括:学号、姓名、专业、班级、3门成绩;和符号常量N(学生数)。(同一班级的学生可以属于不同的专业,同一专业的学生可以属于不同的班级)#define N 10struct Studentchar n

2、um15;/学号char name15;/姓名char major10;/专业(computer,software,network)int classNo;/班级(1-2)int score3;/3门课的成绩(0-2);typedef struct Student STU;二、实验要求 (1) main函数:以菜单形式将各项功能提供给用户,根据用户的选择,调用相应的函数。STU studentN; /保存输入的N名学生信息(2) 定义函数void Input(STU *p, int n):从文件sutdentInit中输入n个学生的信息。(3) 定义函数void Output(STU *p):

3、将p所指的某个学生信息表格化屏幕输出。(4) 定义函数STU Fetch(int studentIndex):从文件中随机读取第studentIndex个(0= studentIndex 240的同学)。(6) 定义函数int Max(STU *p, int scoreIndex):求所有学生、下标为scoreIndex的课程分数最高的学生序号(在数组中的下标),学生序号作为返回值。(7) 定义函数void Sort_select(STU *p): 对所有学生,按平均成绩由低到高进行简单选择排序。(8) 定义函数void Sort_buble(STU *p, int n); 对某个班级的学生,

4、按平均成绩由高到低进行起泡排序。并调用Output输出。定义局部变量:STU stu_class_aveN; /按平均成绩排序后的某个班级的学生信息;int count; /实际元素个数(9) 定义函数void Sort_insert(STU *p, int n, char *major):对某个专业的学生,按某门课程成绩由低到高进行直接插入排序。并调用Output输出。定义局部变量:STU stu_class_ subject N; /按某门课程成绩排序后的某个专业的学生信息;int count; /实际元素个数(10) 定义函数void Save(STU *p,int n) :将学生信息存

5、入文件。四、程序清单(关键语句和变量加注释)1头文件,类型定义,函数声明#include #include #include #define N 10struct Studentchar num15;char name15;char major10;int classNo;int score3;typedef struct Student STU;void Input(STU * p,int n);/从文件sutdentInit中输入n个学生的信息void Output(STU * p);/将p所指的某个学生信息表格化屏幕输出STU Fetch(int studentIndex);/从文件中随

6、机读取第studentIndex个(0= studentIndex 240的同学)int Max(STU * p,int scoreIndex);/求所有学生、下标为scoreIndex的课程分数最高的学生序号(在数组中的下标),学生序号作为返回值void Sort_select(STU * p);/对所有学生,按平均成绩由低到高进行简单选择排序void Sort_buble(STU * p,int n);/对某个班级的学生,按平均成绩由高到低进行起泡排序void Sort_insert(STU * p,int n,char * major);/对某个专业的学生,按某门课程成绩由低到高进行直接

7、插入排序void Save(STU * p,int n);/将学生信息存入文件2.主函数#include student.hvoid main()int i,n,id,num,m,sub,corse;/n,第几个结构体;id,菜单序号;num,班级号;sub,学生下标;corse,课程下标char majorname;/专业名称STU studentsN;STU tem;while(1)printf(n请输入功能编号,运行相应功能n);printf(n1.您将从文件中读取10个人的信n);printf(n2.您将从文件中随机读取第n(0=n=9)个学生的信息n)printf(n3.您将根据某一

8、班级某一专业总分超过多少进行查找n);printf(n4.您将求某一课程分数最高的学生序号的下标n);printf(n5.您将对平均成绩由低到高进行简单选择排序法n);printf(n6.您将对某一个班的平均成绩由低到高进行起泡排序法n);printf(n7.您将对某门专业的学生的某门课程成绩由低到高进行直接插入排序法n);printf(n8.您将把学生信息存入文件n);scanf(%d,&id);getchar();switch(id)case 1:printf(n从文件中读取信息n);Input(students,sizeof(students)/sizeof(STU);/调用Input函

9、数,sizeof(students)/sizeof(STU)表示要读取几个学生的信息printf(n学号 姓名 专业 班级 课程1 课程2 课程3n);for(i=0;iN;i+)Output(students+i);/调用Output函数break;case 2:printf(n请输入您想从文件中读取第几个结构体信息(%d)n,N);scanf(%d,&n);tem=Fetch(n);/Fetchprintf(n下面是第%d个结构体的信息n,n);printf(n学号 姓名 专业 班级 课程1 课程2 课程3n);Output(&tem);/调用Output函数break;case 3:pr

10、intf(n请输入班级号num(1或2)n);printf(n请输入专业名称majorname(computer=c,software=s,network=n)n);printf(n请输入一个分数m(0m300)n);scanf(%d,&num);getchar();scanf(%c,&majorname);getchar();scanf(%d,&m);Search(students,num,majorname,m);/调用Search函数break;case 4:printf(n请输入某一课程下标corse(0,1,2)n);scanf(%d,&corse);sub=Max(students

11、,corse);/调用Max函数,返回值给subprintf(n下面是课程%d最高分学生的信息n,corse);printf(n学号 姓名 专业 班级 课程0 课程1 课程2n);Output(students+sub);/调用Output函数break;case 5:printf(n下面是对所有学生的平均成绩简单选择排序后的顺序:n);Sort_select(students);/调用Sort_select函数break;case 6:printf(n请输入一个班级号num(1或2)n);scanf(%d,&num);printf(n下面是对某个班级起泡排序后顺序:n);Sort_buble(students,num);/调用Sort_buble函数break;case 7:printf(n请输入某一课程下标corse(0,1,2)n);printf(n请输入专业名称majorname(computer=c,software=s,network=n)n);scanf(%d,&corse);getchar();scanf(%c,&majorname);printf(n下面是对某一专业学生的某一课程直接插入排序后的顺序:n);Sort_insert(students,corse,&majorname);/调用

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号