《高级语言实训》指导书

上传人:cn****1 文档编号:533034283 上传时间:2023-08-28 格式:DOC 页数:19 大小:150.01KB
返回 下载 相关 举报
《高级语言实训》指导书_第1页
第1页 / 共19页
《高级语言实训》指导书_第2页
第2页 / 共19页
《高级语言实训》指导书_第3页
第3页 / 共19页
《高级语言实训》指导书_第4页
第4页 / 共19页
《高级语言实训》指导书_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《《高级语言实训》指导书》由会员分享,可在线阅读,更多相关《《高级语言实训》指导书(19页珍藏版)》请在金锄头文库上搜索。

1、高级语言程序设计实训指导书高级语言程序设计实训指导书广西工学院计算机工程系2011年1月一、实训目的高级语言程序设计实训是高级语言程序设计课程教学的重要组成部分,在计算机、软件工程专业的教学中占有重要位置。本课程通过提供学生一个实训练习的机会,巩固、提高学生的基本编程能力,同时通过训练编写综合程序的方式,提高学生分析问题和解决问题的能力,为后续课程的学习打下良好的基础。二、实训要求(一)基本要求1、掌握C 语言程序设计的方法,熟悉使用VC6.0作为开发软件开发C语言程序及C 程序的调试过程。2、熟悉C 语言中的数据类型,数据结构、语句结构、运算方法、函数,巩固和加深对理论课中知识的理解,提高基

2、本编程能力。3、综合实训题,可采取每人一题,或者每组完成一个课题(一组不能超过2人),每组成员必须明确各自的任务。4、要求利用结构化程序设计方法以及C的编程思想来完成系统的设计;5、要求数据使用数组、指针、结构体、链表等均可;6、模块化程序设计:要求在设计的过程中,各个功能模块用函数的形式来实现;7、学生所选课题必须上机通过,并获得满意的结果;8、程序书写风格:锯齿型书写格式。(二)设计步骤在进行实训综合编程时需要遵循以下的步骤:A、问题分析、确定解决方案框架,充分地分析和理解问题本身,弄清要求做什么。在确定解决方案框架过程中,仔细考虑如何使程序结构清晰、合理、简单和易于调试,并确定每个函数的

3、简单功能,以及函数之间的调用关系。B、详细设计和编码:确定程序的主要流程,再此基础上进行代码设计,每个明确的功能模块程序一般不超过60行,否则要进一步划分。C、上机前编写程序与检查。D、上机调试程序。(三)实训报告要求1、需求分析:描述问题。简述课题要解决的问题是什么,有什么要求和限制条件。2、总体设计(程序设计组成框图、流程图)3、详细设计(模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)4、测试结果,用几组测试数据进行测试算法设计的正确性。5、附录。源程序清单和结果:源程序要加注释。结果要包括测试数据和运行结果。三、实训内容对于综合实训题,教师提供参考题目,要求学生在教师

4、提供的的参考题目范围内选题。学生如果自选题目,需要将自选题目的详细内容以及实现要求提供给老师,经老师批准后方可。综合实训题,训练学生使用数组、指针和结构体等数据类型,解决实际问题的能力,提高C语言的编程水平。总体要求学生使用链表或者结构体数组实现对问题中数据组织。程序结构采用结构化程序设计方法。main函数的编写应简洁、清晰,菜单显示、对数据的各个操作都用函数来实现。程序的界面设计风格建议采用文字菜单的形式,例有一教师信息管理程序,其运行界面如下:出现上述界面后,用户可以通过敲入0、1、2、3 、4、5等字符完成所提示的功能。循环往复,直到敲入6字符,退出系统。输入教师信息时,应该提示用户输入

5、教师信息;删除教师时,应该提示用户给出要删除教师记录的姓名;查找时,应该提示用户输入相应姓名等。提示:在使用字符界面的菜单编程时,需要清屏,可以使用system(“cls”);函数将屏幕清屏。本指导书提供的实训参考题目以及要求如下:1、学生信息管理问题描述:已知程序要求管理的学生信息包括:学号(不重复),班级,姓名,年龄,性别,出生日期,地址,电话,E-mail等。设计一程序,完成以下功能:1) 能从键盘输入学生的信息(增加,输入时需要能检查该学号的学生的记录是否已经存在,出生日期格式是否合法(格式为:YYYY-MM-DD,如2009-01-02)2) 能从指定的文件中读入学生的信息3) 能按

6、学号查询学生的信息4) 能按班级查询学生信息5) 能删除指定学号的学生信息6) 能将学生信息保存在指定的文件中提示:l 从文件读入学生信息时,需要先设计好文件的格式,从文件中读取数据后,按照预先设计的格式分析数据,提取学生的信息,读入程序l 定义一个日期结构体保存日期,具体信息为:年、月、日l 判断出生日期的格式是否合法时,需要判断长度是否为10,第5位和第8位是否为-,字符,将1-4位表示的年份,6-7位表示的月份,9-10位表示的日期分别转换成整数。判断是否满足构成日期的条件闰年月份只能是1-12之间的数,如果是闰年,二月可以是29天否则不能大于28,1,3,5,7,8,10,12月可以是

7、31天,其余只能小于等于30(建议写成函数)。2、通讯录管理问题描述:已知程序要求通讯录的信息为:姓名、电话号码、类别、电子邮件,其中类别的类型有 :同事类、朋友类、商务类、一般类),设计一程序,完成以下功能:1) 能从键盘输入通讯录的信息(增加,输入时需要能检查该姓名的通讯录的记录是否已经存在,如果存在,需要询问是否是覆盖还是增加,需要判断输入的类型是否存在)2) 能从指定的文件中读入通讯录的信息3) 能按姓名查询通讯录的信息4) 能按分类查询通讯录的信息5) 能删除指定姓名的通讯录的信息6) 能将通讯录信息保存在指定的文件中模块设计参考: 第一个模块主函数main()的功能是:根据选单的选

8、项调用各函数,并完成相应的功能。 第二个模块Menu()的功能是:显示英文提示选单。 第三个模块Quit()的功能是:退出选单。 第四个模块Create()的功能是:创建新的通讯录。 第五个模块Add()的功能是:在通讯录的末尾,写入新的信息,并返回选单。 第六个模块Find()的功能是:查询某人的信息,如果找到了,则显示该人的信息,如果未找到,则提示通讯录中没有此人的信息,并返回选单。 第七个模块Alter()的功能是:修改某人的信息,如果未找到要修改的人,则提示通讯录中没有此人的信息,并返回选单。 第八个模块Delete()的功能是:删除某人的信息,如果未找到要删除的人,则提示通讯录中没有

9、此人的信息,并返回选单。 第九个模块List()的功能是:显示通讯录中的所有记录。3、酒店房间登记与计费管理问题描述:已知在酒店中有10个房间,每个房间的信息包括房间号,每天住宿价格,设计一程序,完成以下功能:1) 从键盘输入客户的入住信息(包括:客户姓名,身份证号,开始入住时间、退房时间(假设客户入住时就确定什么时候退房)、入住房间号),需要完成以下功能:l 入住房间号是否存在,开始入住时间,退房时间格式是否合法(格式为:YYYY-MM-DD,如2009-01-02)l 输入入住信息时需要完成以下校验:该房间是否当前已经入住,如果是提示用户不能入住,检查身份证号是否为15位或18位,如果不是

10、则提示错误l 输入入住信息时,需要根据入住时间和退房时间,自动计算入住天数(假设入住时间不会跨年),并根据相应房间的住宿价格,计算住宿费用2) 根据房间号,查询住宿情况3) 根据房间号和统计时间段(开始和结束时间,不跨年)统计房间产生的住宿费用提示:l 酒店中的10个房间,可以采用结构体数组实现,每个数组元素表示一个房间,房间的信息表示为:房间号,价格l 定义一个日期结构体保存日期,具体信息为:年、月、日l 定义一个链表表示客户的入住信息,结构体信息包括:客户姓名,身份证号,开始入住时间、退房时间,入住房间号,入住天数,入住价格、住宿费用(入住天数,入住价格、住宿费用的信息在输入入住信息时计算

11、出来)l 判断入住时间和退房时间的格式是否合法时,需要判断长度是否为10,第5位和第8位是否为-,字符,将1-4位表示的年份,6-7位表示的月份,9-10位表示的日期分别转换成整数。判断是否满足构成日期的条件闰年月份只能是1-12之间的数,如果是闰年,二月可以是29天否则不能大于28,1,3,5,7,8,10,12月可以是31天,其余只能小于等于30(建议写成函数)。l 计算入住天数,因为入住时间不会跨年,因此,可以根据月份和日期,计算入住时间到退房时间之间的天数。l 判断房间是否当前已经入住需要查询入住信息链表,在该链表中是否存在退房时间比入住时间大的记录,如果有,则表示已经入住l 统计时间

12、段内房间产生的住宿费用时,需要根据开始统计的时间和结束统计时间查询入住信息链表,会有四种情况:1、查询记录的入住日期大于开始统计时间、退房日期小于结束统计时间,累加该记录的住宿费用;2、查询记录的入住日期小于开始统计时间,但退房日期大于开始统计时间,需要计算退房时间到开始统计时间的天数乘以价格再累加;3、查询记录的入住日期小于结束统计时间,但退房日期大于结束统计时间,需要计算入住时间到结束统计时间的天数乘以价格再累加;4、开始统计日期大于入住时间,结束统计日期小于退房时间,需要计算结束统计日期到开始统计日期的天数,乘以价格再累加。其余表示不在该统计时间段内,不产生入住费用4、职工信息管理问题描

13、述:已知职工信息包括职工号、姓名、性别、出生日期、学历、工资、住址、电话等。设计一程序,完成以下功能:1) 能从键盘输入职工的信息(增加,输入时需要能检查该职工号的职工的记录是否已经存在,出生日期格式是否合法(格式为:YYYY-MM-DD,如2009-01-02)2) 能从指定的文件中读入职工的信息3) 能按职工号查询职工的信息4) 能按学历统计职工数5) 能查询到指定年份需要退休的职工的信息(男:60岁,女55岁)6) 能删除指定职工号的职工信息7) 能将职工信息保存在指定的文件中提示:l 从文件读入职工信息时,需要先设计好文件的格式,从文件中读取数据后,按照预先设计的格式分析数据,提取职工

14、的信息,读入程序l 定义一个日期结构体保存日期,具体信息为:年、月、日l 判断入出生日期格式是否合法时,需要判断长度是否为10,第5位和第8位是否为-,字符,将1-4位表示的年份,6-7位表示的月份,9-10位表示的日期分别转换成整数。判断是否满足构成日期的条件闰年月份只能是1-12之间的数,如果是闰年,二月可以是29天否则不能大于28,1,3,5,7,8,10,12月可以是31天,其余只能小于等于30(建议写成函数)。ll 可以使用一个结构体数组保存学历,学历结构体包含的信息为:学历代号,学历名称。(如001,本科 则表示本科学历),在输入职工信息时,只需要输入该学历对应的代号则可(查询学历

15、数组中是否有该代号的记录),将该代号保存在职工信息中。显示时,根据代号在类别结构体数组中查询其学历名称显示。5、销售管理问题描述:已知一公司某公司有4个销售员(编号、姓名、性别),负责销售5种产品(产品代号、产品名称,销售价格)。设计一程序,完成以下功能:1) 从键盘输入销售信息:销售员编号、产品编号、销售日期、销售数量(输入时需要判断销售员编号是否存在、产品编号是否存在、销售数量是否大于0,销售日期日期格式是否合法(格式为:YYYY-MM-DD,如2009-01-02)2) 能输出指定时间段内的销售统计报表,格式如下: 销售统计报表 产品代号 销售之和 销售员代号 1 2 3 4 5 1 2 3 4 每

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

当前位置:首页 > 学术论文 > 其它学术论文

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