数据结构课程设计报告之成绩分析与全国交通咨询模拟

上传人:re****.1 文档编号:458693055 上传时间:2023-04-04 格式:DOC 页数:56 大小:288.50KB
返回 下载 相关 举报
数据结构课程设计报告之成绩分析与全国交通咨询模拟_第1页
第1页 / 共56页
数据结构课程设计报告之成绩分析与全国交通咨询模拟_第2页
第2页 / 共56页
数据结构课程设计报告之成绩分析与全国交通咨询模拟_第3页
第3页 / 共56页
数据结构课程设计报告之成绩分析与全国交通咨询模拟_第4页
第4页 / 共56页
数据结构课程设计报告之成绩分析与全国交通咨询模拟_第5页
第5页 / 共56页
点击查看更多>>
资源描述

《数据结构课程设计报告之成绩分析与全国交通咨询模拟》由会员分享,可在线阅读,更多相关《数据结构课程设计报告之成绩分析与全国交通咨询模拟(56页珍藏版)》请在金锄头文库上搜索。

1、数据结构课程设计报告1、 成绩分析问题2、 全国交通咨询模拟 学院(系): 计算机科学与工程学院 班 级: 11级36X班 学生姓名: XXX 学号1110306010X 指导教师: XXX 2012年12月17日 到2013年1月 4日一、课程设计概述:本次数据结构课程设计共完成两个题:成绩分析问题和全国交通咨询模拟。使用语言:C+编译环境:TC3.0 / VC6.0二、课程设计题目一实验内容成绩分析文档资料问题描述录入、保存一个班级学生多门课程的成绩,并对成绩进行分析。需求分析1.通过键盘输入各学生的多门课程的成绩,建立相应的文件sc.txt2.对文件sc.txt中的数据进行处理,要求具有

2、如下功能:a.按各门课程的成绩排序,并生成相应的文件输出b.计算每人的平均成绩,按平均成绩排序,并生成文件c.求出各门课程的平均成绩、不及格人数、6069分人数、7079分人数、8089分人数、90分以上人数d.根据姓名或学号查询某人的各门课成绩,重名也要能处理3.界面美观概要设计-=ADT=-save(int n)/保存函数int load()/加载记录或可以计算记录个数的函数void printf_face()/显示一个记录的函数browse()/浏览(全部)模块函数void printf_back()/一个任务结束时的选择浏览还是返回的函数average(int i)/求平均值函数no_

3、input(int i,int n)/学号输入函数score_input(int i)/分数输入函数input(int i)/输入一个记录函数modify_data(int i,int n)/修改记录函数enter()/输入模块函数add()/追加模块函数modify()/修改模块函数del()/删除模块函数int h(char k)/ 查找模块函数insert()/插入模块函数void sift(RecNode r,int t,int w)/ 排序模块(按平均成绩) 函数void fenduantongji()/统计模块函数teacher()/教师界面函数st()/学生界面函数distin(

4、)/密码函数menu()/主界面函数 存储结构struct student/学生信息结构体char num11;/学号 char name20;/姓名 int score8;/成绩(英语 数学 C语言 管理学 信检 体育 近代史 线数) double ave;/平均分stuN;typedef struct node unsigned long int key; struct node * link;HNode;typedef structint key; /*排序码*/ float data;/*其他数据项*/RecNode; 流程图(1)程序设计组成框图学生成绩管理系统1. 输入新数据2.

5、添加学生数据3. 修改学生数据4. 删除学生数据5. 浏览全部学生数据6.按学号查询7.插入学生信息8. 按平均分排序9. 分段统计10.退出11. 返回主界面 (2)模块功能说明1 输入新数据:完成全部学生记录的输入。2 添加数据:添加新学生所有信息。3 增加功能:增加新学生的部分信息。 4 删除功能:删除学生信息。5浏览全部学生数据:输出所有学生信息。6学号查询:按学号查询学生信息。7插入学生信息:插入新学生信息。8按平均分排序:按平均分高低显示学生记录。9分段统计:查询各等次学生信息。 10 退出系统。11. 返回主界面。(3)程序流程图开始输入指令(111)输入新数据添加学生数据修改学

6、生数据删除学生数据浏览全部学生数据学号查询插入学生信息按平均分排序分段统计退出123456789100结束110详细设计 源程序清单(重要程序段和其重要变量的说明)#include#include#include/*控制学生记录的容量*/#define N 40#define PR printf(nr%s %s %s %s %s %s %s %s %s %s %s ,stui.num,stui.name,stui.score0,stui.score1,stui.score2,stui.score3,stui.score4,stui.score5,stui.score6,stui.score7,

7、stui.score8,stui.ave)struct studentchar num11; char name20; int score8; float ave;stuN;typedef struct node unsigned long int key; struct node * link;HNode;typedef structint key; /*排序码*/ float data;/*其他数据项*/RecNode;/*全新保存函数*/save(int n) /*保存函数,保存n个记录*/FILE *fp; int i; if(fp=fopen(sc.txt,wb)=NULL) /*以

8、输出打开方式,在此前的记录被覆盖*/ printf(n不能打开文件n); getch();return NULL; for(i=0;in;i+) if(stui.ave!=0) /*stui.ave=0表此记录已删除*/ if(fwrite(&stui,sizeof(struct student),1,fp)!=1) printf(文件输入错误n); fclose(fp); return 0;/*加载记录或可以计算记录个数的函数*/int load() /*加载记录或可以计算记录个数的函数*/FILE *fp; int i; if(fp=fopen(sc.txt,rb)=NULL) /*以输出

9、打开方式,在此前的记录被覆盖*/ printf(n不能打开文件n); getch();return NULL; for(i=0;!feof(fp);i+) fread(&stui,sizeof(struct student),1,fp); fclose(fp); return(i-1); /*返回记录个数*/void puts_() /*显出-函数*/puts(n-);/*显示数据结构项目函数*/void printf_face() /*显示数据结构项目*/printf(n 学号 姓名 英语 数学 C语言 管理学 信检 体育 近代史 线数 平均分n);/*显示一个记录的函数*/printf_o

10、ne(int i) /*显示一个记录的函数*/int j; printf(%12s %-9s,stui.num,stui.name); for(j=0;j8;j+) printf(%-6d,stui.scorej); printf(%-7.2fn,stui.ave); return 0;teacher();/*浏览(全部)模块*/browse() /*浏览(全部)模块*/int i,n; n=load(); /*加载记录*/ system(cls); puts_(); printf_face(); /*调用显示数据结构项目函数*/ for(i=0;in;i+) if(i!=0)&(i%10=0

11、) /*目的是分屏显示*/ printf(nnPass any key to contiune . . .); getch(); puts(nn); printf_one(i); /*调用显示一个记录的函数*/ puts_(); printf(tThere are %d record.n,n); printf(nPass any key to back . . .); getch(); /*按任意健*/ teacher(); return 0;/*一个任务结束时的选择浏览还是返回的函数*/void printf_back() /*一个任务结束时的选择浏览还是返回*/int w; printf(nnt-成功 -nn); printf(请选择:nnt1).现在浏览全部t2).返回: bb); scanf(%d,&w);system(cls); if(w=1) browse(); else teacher();average(int i) /*对第i个记录的分数求平均值*/int j; int sum; for(sum=0,j=0;j8;j+) sum+=stui.scorej; stui.ave=sum/8.0; return 0;/*学号输入函数*/no_input(int i,in

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > 总结/计划/报告

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