c语言课程设计指导书46343_第1页
c语言课程设计指导书46343_第2页
c语言课程设计指导书46343_第3页
c语言课程设计指导书46343_第4页
c语言课程设计指导书46343_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程名称:C语言课程设计 课程编码:S101101066英文名称:Designing Project for C Langue Programming 学 时:20 学 分:适用专业:软件学院 课程类别:课程性质:课程设计 先修课程:C语言程序设计一、课程设计的目的与要求1教学目的本课程设计是学生学习完C语言程序设计课程后,进行的一次全面的综合训练,通过课程设计,更好地掌握使用C语言进行程序设计的方法,加深对C语言特点和使用C语言进行程序设计开发过程的理解,加强动手能力。其主要目的是:(1) 进一步培养学生结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解;(2) 针对C语言中的

2、重点和难点内容进行训练,独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格。(3) 掌握C语言的编程技巧和上机调试程序的方法。(4) 掌握程序设计的常用算法。2教学要求(1) 要求从所给题目中任选若干个,每个学生必须独立完成课程设计,不能互相抄袭。(2) 设计完成后,对所完成的工作进行答辩。(3) 要求写出一份详细的课程设计报告。(4) 程序设计题目,须提交相应的程序,并需提供加注释的源程序,能正常运行。二、课程设计的基本要求设计步骤的规范不但可以培养学生科学的工作方法和作风,而且还能有效地减少错误,提高工作效率。因此必须严格执行良好的实验步骤规范(包括上级操作规范)。本课程设计的基

3、本步骤与要求是:(1) 问题分析及解决方案框架确定 充分地分析和理解问题本身,弄清要求是要做什么。 在确定解决方案框架过程中,考虑怎样使程序结构清晰、合理、简单和易于调试,并确定每个函数的简单功能,以及函数之间的调用关系。(2) 详细设计和编码 确定算法的主要流程,再此基础上进行代码设计(Coding),每个明确的功能模块程序一般不超过60行,否则要进一步划分。(3) 上机前编写程序与检查 上机前程序检查可有效提高调试效率,减少上机调试程序时的无谓错误。 程序检查主要有两种途径:用一组测试数据手工执行程序;通过阅读或给别人讲解自己的程序而深入全面地理解程序逻辑。把程序中的明显错误事先排除。(4

4、) 上机调试程序(5) 完成课程设计报告1) 问题描述:题目要解决的问题是什么。2) 设计 设计算法:主要算法思想,用流程图表示。 实现注释:各项功能的实现程度。 调试报告:调试过程中遇到的主要问题,是如何解决的;对设计和编码的回顾讨论和分析;改进设想;经验和体会等。3) 附录:源程序清单和结果。如果题目规定了测试数据,则结果要包含这些测试数据和运行输出,当然还可以含其他测试数据和运行输出。三、课程设计的内容 1学生信息管理系统程序说明:本程序属于非数值计算型算法设计,学生需要设计出学生管理系统所需要的基本功能,并设计简单的界面(无需图形化)。本程序主要考察对自定义函数的熟悉程度,本程序中主要

5、使用到的是数组的相关操作,包括数组的输入、输出、查找、插入、删除等操作,需要对数组有比较深入的掌握。设计要求:(1)通过提示菜单选择可以进行的操作。(2)将学生的信息存入文件中,并命名为StudentInfo.txt。(3)在本系统中可以进行管理系统包含的基本操作,其中包括a) 查看所有学生的信息b) 输入一个学生的学号,从当前学生中进行查找,如果找到则显示该学生的相关信息,如果没有找到则给出提示信息c) 添加一个学生的基本信息,通过输入学号,首先查找是否存在该学号的学生,如果存在则提示重新输入,否则将该学生按照顺序插入到相应位置d) 删除一个学生的基本信息,通过输入学号,首先查找是否存在该学

6、号的学生,如果存在则将该学生删除,否则给出提示信息,提示该学生不存在(4)学生基本信息包括学号、姓名、性别和专业这些简单信息(5)学生信息文件中每一行存放一个学生的信息程序参考界面:提示:(1)当程序执行的时候所读取的学生信息文件必须存在,否则可能会出现错误(2)学生信息文件中存放学生信息的时候是按照行来存放的,即一行一个学生(3)程序执行的基本过程为:a) 在所有操作之前,也就是加载操作菜单之前,先从文件中读取所有学生的信息,并存入一个数组中,此时数组可以定义为包含100个元素b) 然后根据菜单所进行的所有操作都是对当前数组进行操作,此时也就是对数组的查找、定位、添加、修改、删除操作c) 当

7、退出系统的时候再将当前数组中的所有元素按照一个学生一行的方式写回学生信息文件中,此时注意选择覆盖方式,这样就可以将原来的所有数据覆盖,只保留最新的数据d) 当按行读取学生信息文件的时候,有可能最后一行只有一个回车,这时候实际上所读取的数据为空字符串,需要对此作判断,如果是空字符串,则说明已经没有学生,就必须将当前读入的空字符串写入数组中2职工信息管理系统程序说明:本程序属于非数值计算型算法设计,学生需要设计出职工管理系统所需要的基本功能,并设计简单的界面(无需图形化)。本程序主要考察对自定义函数的熟悉程度,本程序中主要使用到的是数组的相关操作,包括数组的输入、输出、查找、插入、删除等操作,需要

8、对数组有比较深入的掌握。设计要求:(1)通过提示菜单选择可以进行的操作。(2)将职工的信息存入文件中,并命名为EmployeeInfo.txt。(3)在本系统中可以进行管理系统包含的基本操作,其中包括a) 查看所有职工的信息b) 输入一个职工的职工号,从当前职工中进行查找,如果找到则显示该职工的相关信息,如果没有找到则给出提示信息c) 添加一个职工的基本信息,通过输入职工号,首先查找是否存在该职工号的职工,如果存在则提示重新输入,否则将该职工按照顺序插入到相应位置d) 删除一个职工的基本信息,通过输入职工号,首先查找是否存在该职工号的职工,如果存在则将该职工删除,否则给出提示信息,提示该职工不

9、存在(4)职工基本信息包括职工号、姓名、性别、生日、工作、薪水和电话这些简单信息(5)职工信息文件中每一行存放一个职工的信息程序参考界面:其他界面同学生管理系统相似,请参考学生管理系统界面提示:(1)当程序执行的时候所读取的职工信息文件必须存在,否则可能会出现错误(2)职工信息文件中存放职工信息的时候是按照行来存放的,即一行一个职工(3)程序执行的基本过程为:a) 在所有操作之前,也就是加载操作菜单之前,先从文件中读取所有职工的信息,并存入一个数组中,此时数组可以定义为包含100个元素b) 然后根据菜单所进行的所有操作都是对当前数组进行操作,此时也就是对数组的查找、定位、添加、修改、删除操作c

10、) 当退出系统的时候再将当前数组中的所有元素按照一个职工一行的方式写回职工信息文件中,此时注意选择覆盖方式,这样就可以将原来的所有数据覆盖,只保留最新的数据d) 当按行读取职工信息文件的时候,有可能最后一行只有一个回车,这时候实际上所读取的数据为空字符串,需要对此作判断,如果是空字符串,则说明已经没有职工,就必须将当前读入的空字符串写入数组中3通讯录管理系统程序说明:本程序属于非数值计算型算法设计,学生需要设计出通讯录管理系统所需要的基本功能,并设计简单的界面(无需图形化)。本程序主要考察对自定义函数的熟悉程度,本程序中主要使用到的是数组的相关操作,包括数组的输入、输出、查找、插入、删除等操作

11、,需要对数组有比较深入的掌握。设计要求:(1)通过提示菜单选择可以进行的操作。(2)将人员的信息存入文件中,并命名为PersonInfo.txt。(3)在本系统中可以进行管理系统包含的基本操作,其中包括a) 查看所有人员的信息b) 输入一个人员的人员号,从当前人员中进行查找,如果找到则显示该人员的相关信息,如果没有找到则给出提示信息c) 添加一个人员的基本信息,通过输入人员号,首先查找是否存在该人员号的人员,如果存在则提示重新输入,否则将该人员按照顺序插入到相应位置d) 删除一个人员的基本信息,通过输入人员号,首先查找是否存在该人员号的人员,如果存在则将该人员删除,否则给出提示信息,提示该人员

12、不存在(4)人员基本信息包括人员号、姓名、性别、生日、电话和所在地这些简单信息。(5)人员信息文件中每一行存放一个人员的信息。程序参考界面:其他界面同学生管理系统相似,请参考学生管理系统界面提示:(1)当程序执行的时候所读取的人员信息文件必须存在,否则可能会出现错误(2)人员信息文件中存放人员信息的时候是按照行来存放的,即一行一个人员(3)程序执行的基本过程为:a) 在所有操作之前,也就是加载操作菜单之前,先从文件中读取所有人员的信息,并存入一个数组中,此时数组可以定义为包含100个元素b) 然后根据菜单所进行的所有操作都是对当前数组进行操作,此时也就是对数组的查找、定位、添加、修改、删除操作

13、c) 当退出系统的时候再将当前数组中的所有元素按照一个人员一行的方式写回人员信息文件中,此时注意选择覆盖方式,这样就可以将原来的所有数据覆盖,只保留最新的数据d) 当按行读取人员信息文件的时候,有可能最后一行只有一个回车,这时候实际上所读取的数据为空字符串,需要对此作判断,如果是空字符串,则说明已经没有人员,就必须将当前读入的空字符串写入数组中4图书馆模拟系统程序说明:本程序属于非数值计算型算法设计,学生需要设计出图书馆模拟系统所需要的基本功能,并设计简单的界面(无需图形化)。本程序主要考察对自定义函数的熟悉程度,本程序中主要使用到的是数组的相关操作,包括数组的输入、输出、查找、插入、删除等操

14、作,需要对数组有比较深入的掌握。设计要求:(1)通过提示菜单选择可以进行的操作。(2)将图书的信息存入文件中,并命名为BookInfo.txt。(3)将图书借阅情况信息存入文件中,并命名为SendInfo.txt。(4)在本系统中可以进行管理系统包含的基本操作,其中包括a) 查看所有图书的信息b) 输入一本图书的图书编号,从当前图书中进行查找,如果找到则显示该图书的相关信息,如果没有找到则给出提示信息c) 添加一本图书的基本信息,通过输入图书编号,首先查找是否存在该图书编号的图书,如果存在则提示重新输入,否则将该图书按照顺序插入到相应位置d) 删除一本图书的基本信息,通过输入图书编号,首先查找

15、是否存在该图书编号的图书,如果存在则将该图书删除,否则给出提示信息,提示该图书不存在e) 借阅一本图书,需要给出学号和图书编号,如果图书编号不存在则重新输入,直到输入正确为止,并将学号和相应的图书编号存入SendInfo.txt文件中(5)图书基本信息包括图书编号、书名、作者、出版社和价钱这些简单信息(6)图书信息文件中每一行存放一本图书的信息(7)借阅信息文件中每一行存放一本书的借阅情况程序参考界面:其他界面同学生管理系统相似,请参考学生管理系统界面,但学生管理系统中没有借书界面,因此借书界面如下所示当输入图书编号错误的时候,显示提示:(1)当程序执行的时候所读取的图书信息文件必须存在,否则

16、可能会出现错误(2)图书信息文件中存放图书信息的时候是按照行来存放的,即一行一本书(3)借阅信息文件中存放学生借阅情况是按照行来存放的,即一行存放一个学号和一个图书编号(4)程序执行的基本过程为:a) 在所有操作之前,也就是加载操作菜单之前,先从文件中读取所有图书的信息,并存入一个数组中,此时数组可以定义为包含100个元素b) 然后根据菜单所进行的所有操作都是对当前数组进行操作,此时也就是对数组的查找、定位、添加、修改、删除操作c) 当退出系统的时候再将当前数组中的所有元素按照一本图书一行的方式写回图书信息文件中,此时注意选择覆盖方式,这样就可以将原来的所有数据覆盖,只保留最新的数据d) 当按

17、行读取图书信息文件的时候,有可能最后一行只有一个回车,这时候实际上所读取的数据为空字符串,需要对此作判断,如果是空字符串,则说明已经没有人员,就必须将当前读入的空字符串写入数组中5学生选课系统程序说明:本程序属于非数值计算型算法设计,学生需要设计出学生选课系统所需要的基本功能,并设计简单的界面(无需图形化)。本程序主要考察对自定义函数的熟悉程度,本程序中主要使用到的是数组的相关操作,包括数组的输入、输出、查找、插入、删除等操作,需要对数组有比较深入的掌握。设计要求:(1)通过提示菜单选择可以进行的操作。(2)将课程的信息存入文件中,并命名为LessonInfo.txt。(3)将选课情况信息存入

18、文件中,并命名为SelectInfo.txt。(4)在本系统中可以进行管理系统包含的基本操作,其中包括a) 查看所有课程的信息b) 输入一门课程的课程编号,从当前课程中进行查找,如果找到则显示该课程的相关信息,如果没有找到则给出提示信息c) 添加一门课程的基本信息,通过输入课程编号,首先查找是否存在该课程编号的课程,如果存在则提示重新输入,否则将该课程按照顺序插入到相应位置d) 删除一门课程的基本信息,通过输入课程编号,首先查找是否存在该课程编号的课程,如果存在则将该课程删除,否则给出提示信息,提示该课程不存在e) 选修一门课程,需要给出学号和课程编号,如果课程编号不存在则重新输入,直到输入正

19、确为止,并将学号和相应的课程编号存入SelectInfo.txt文件中(5)课程基本信息包括课程编号、课程名、学时和学分这些简单信息。(6)课程信息文件中每一行存放一门课程的信息。程序参考界面:其他界面同图书馆模拟系统相似,请参考图书馆模拟系统界面提示:(1)当程序执行的时候所读取的课程信息文件必须存在,否则可能会出现错误(2)课程信息文件中存放课程信息的时候是按照行来存放的,即一行一门课程(3)借阅信息文件中存放学生借阅情况是按照行来存放的,即一行存放一个学号和一门课程编号(4)程序执行的基本过程为:a) 在所有操作之前,也就是加载操作菜单之前,先从文件中读取所有课程的信息,并存入一个数组中,此时数组可以定义为包含100个元素b) 然后

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论