c语言程序课程设计版本,C语言程序课程设计.doc

C语言程序课程设计

第 PAGE 9页 共 NUMPAGES 11页

C语言程序课程设计

题目:

院、 系:计算机科学与工程学院

学科专业: 网络工程

学 生: 潘佳伟

学 号: 090612110

指导教师: 梁晨

2009年12月

PAGE

目 录

1课程设计的题目 3

2课程设计的目的(设计要解决的问题)3

3概要设计(函数划分、总体设计) 4

4详细设计(流程图、程序)5

5调试结果11

6课程设计总结11

7心得体会 11

课程设计的题目 课程设计的目的

要求:每组4—5人,共同完成,交1份设计报告,成员按贡献大小给出顺序

题目名称:学生成绩管理系统??

设计内容:????设计一个学生成绩管理系统,对本学期的本班的学习成绩进行管理,可以用数组来设计这个程序,具有查询和检索功能,

1、设计内容

1) 每一条记录包括一个学生的学号、姓名、性别、各门课成绩(本学期的科目)、平均成绩。

2) 输入功能:可以一次完成若干条记录的输入。

3) 显示功能:完成全部学生记录的显示。

4) 查找功能:完成按姓名或学号查找学生记录,并显示。

5) 排序功能:按学生平均成绩进行排序。

6) 插入功能:按平均成绩高低插入一条学生记录。

7) 将学生记录存在文件student.dat中。

8) 应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!

2、设计要求

已知有存储本班学生记录(包括学号、姓名、科目成绩、性别)的文件student.dat,所有学生以学号从小到大排序(该文件自行建立)。要求编程序实现查询、排序、插入、删除诸功能。具体要求如下:

1) 要求显示如下界面 1查询 2排序 3插入 4删除 , 通过选择1-4来确定要做哪一个操作。

2) 若选1,则出现如下界面 1.1按学号查询 1.2按姓名查询 1.3按成绩查询 ,通过选择1.1-1.3来确定要做哪一个操作,其中:按姓名查询用顺序法实现;按成绩查询实现查询成绩小于60分的学生;找到该生将学生记录输出到屏幕,若查无此人,输出相关信息。

3) 若选2,则按成绩从大到小排序,姓名,学号顺序也随之调整。

4) 若选3,将一个新学生记录按学号顺序插入,并把结果保存到文件student.dat中。

5) 若选4,删除指定学生的记录,并把结果保存到文件student.dat中。

6) 不同的模块都要有出错处理,并能给出出错提示。如输入数据错误,文件操作错误等等

7) 以上各个功能均编写成子函数,由主函数调用实现。

8) 利用结构体数组实现学生成绩的数据结构设计;

9) 完成设计任务并书写课程设计报告。

最终成绩=平时20%+答辩40%+论文40%

概要设计(函数划分、总体设计)整个系统除了主函数外,另外还有10个函数,实现八大功能:输入功能、显示功能、查找功能、排序功能、插入功能、保存功能、读取功能。各个函数的详细设计说明分别如下:1、 主函数 main()利用无限次循环for(;;)和swithch()实现各函数的调用,系统根据输入的数字选项来调用相应的函数。2、 初始化函数 STUDENT???????? *init()这是一个无参函数,里面只有一个语句,它的作用是使链表初始化,使head的值为NULL。比如:没有这个函数的话,在你没有输入任何数据的情况下,去执行显示功能的时候会显示一些乱码!3、 菜单选择函数 int menu_select();这是一个无参函数,主要实现“功能选择”的界面,在这个界面里有显示系统的九大功能,根据每个功能前面的序号进行选择,中间还显示系统当前的时间。等执行完每一个函数功能后,按任一键回到主界面也要通过这个函数来实现!4、 输入记录函数 STUDENT *create()这是一个无参函数,用来执行第学生成绩记录的输入,当学生为0时停止输入,函数结束后,带回一个指向链表头的指针head。算法:先声明一个首节点head,并将head->next设为NULL。每输入一个数据就声明一个新节点p,把p->next设为NULL,并且链接到之前列表的尾端。5、 显示记录函数 void print(STUDENT *head)这是一个不返回值的有参函数,形参为“链表头的指针”,负责对全部学生成绩记录的输出,不足之处就是不能对学生成绩进行分页显示。算法:先将p结点的指针指向第一个结点,将p结点(即第一个结点)的数据输出。然后再将p结点的指针指向p指针的的指针(即下一结点),将p结点(即第一结点)的数据输出。重复执行此步聚直

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值