C语言专业课程设计大刚新
资源和安全工程学院C++语言课程设计 (纲领) 一、目标和任务 目标是经过课程设计,使学生深入掌握C++语言基础知识和基础程序设计技巧,提升学生综合编程能力和程序调试能力,和利用计算机处理实际问题能力。 二、设计要求 1. 查阅资料,学习新知识和方法,培养学习能力和知识应用能力。 2. 独立思索,独立完成。培养独立思索综合分析问题能力。 3. 要求先设计,后上机实现。上机前应有设计初稿。 4. 注意培养团结协作精神。在独立思索基础上,同学之间应该相互帮助,探讨编程方法和技巧,取长补短,但不能剽窃。 5. 按时完成上机编程任务和写出实习汇报。 三、汇报要求 1.目录 2.题目和设计要求 3.问题分析,设计思想。 4.画步骤图或模块结构图; 5.有些题目要制作字符形式菜单; 6.不一样功效使用不一样函数实现;对程序进行必需注释; 7.经典算法和技巧分析,调试体会。 8.总结。包含碰到问题和处理问题方法,心得体会。 四、考评 1. 程序设计能力。依据上机前准备,包含设计初稿。 2. 程序调试能力。依据程序经过情况。 3. 学习态度。包含考勤和上机是态度和遵守纪律情况。 4. 总结归纳能力。经过实习汇报评价。 五、设计题目(在下面九个设计题目中任选1个题目,在两个星期之内完成) (一)图书管理系统 1. 新书入库: 图书信息包含书名、书号、库存量、现存量共4项。首先输入3本书信息,并将其存入文件“book.dat”中。当有新书入库时, 先判定文件中是否有此书( 即比较书名 ), 若有则修改库存量, 现存量信息; 若无此书, 则将该书信息添加到文件中. 2. 图书查询: 输入一个书号,在文件中查找此书,若找到则输出此书全部信息; 若找不到则输出查找失败信息。 3. 借阅管理 (1) 每个读者信息包含姓名、 编号, 1张借书卡( 限借一本书 ), 输入3个读者信息存入文件“reader.dat”中。 (2) 借书登记: 输入读者姓名,所借图书书号,先判定姓名是否在文件”reader.dat” 中, 若有则将书号存入一张借书卡上( 注: 初始时借书卡信息全部为零,借书后借书卡信息改为所借书书号), 并修改文件”reader.dat”对应内容, 同时修改文件”book.dat”中此书现存量。若”reader.dat”无此姓名, 则应提醒错误。 (3) 还书管理: 输入读者姓名, 所还图书书号, 将借书卡信息置为零, 并修改文件”reader.dat”对应内容, 同时修改文件”book.dat”中此书现存量. 4. 输出全部图书信息和全部读者信息 5. 退出系统。 (二)航空订票系统 1. 航线信息: 每条航线信息包含航班号, 飞机号, 目标地, 订票数, 余票数共5项。 假设现在有3条航线, 目标地分别是北京, 上海, 广州, 飞机上可乘坐100人( 即初始订票数为0, 余票数为100) , 将这3条航线信息存入文件”airline.dat” 中. 2. 订票业务 (1) 用户信息包含姓名, 航班号, 座位号(初始为0), 假设已经有3个用户信息存入文件“customer.dat”中. (2) 有新用户订票时, 先输入用户姓名和她提出航班号, 查询该航线订票情况, 若有余票, 则为用户办理订票手续, 分配给用户一个座位号, 然后将新用户信息添加到文件“customer.dat”中, 并修改文件“airline.dat”中该航线订票数和余票数. 若无余票, 则输出客满信息. 3. 退票业务: 依据用户提出航班号, 办理退票, 从文件“customer.dat”中删除该用户信息, 并修改文件“airline.dat”中对应航线订票数和余票数. 4. 输出全部航线信息和全部用户信息. 5. 退出系统. (三) 销售管理系统 1. 销售员信息: 每个销售员包含姓名, 编号, 产品1销售额, 产品2销售额, 总销售额共5项信息. 首先输入3个销售员信息存入文件“sailer.dat”中. 2. 排序: 按产品1销售额进行排序,将排序后信息存入文件“sailer1.dat”中, 按产品2销售额进行排序,将排序后信息存入文件“sailer2.dat”中, 按总销售额进行排序,将排序后信息存入文件“sailer3.dat”中。 3. 统计: 分别统计产品1总销售额和产品2总销售额并进行输出。 4. 销售员增加: 增加一个销售员信息, 先将其添加到文件“sailer.dat”中, 然后按其总销售额进行插入排序, 排序后信息仍存入文件“sailer3.dat”中。 5. 销售员降低: 输入一个销售员姓名, 从文件“sailer.dat”中将其删除。 6. 输出全部销售员信息。 7. 退出系统。 (四)停车场管理 1.有一个两层停车场, 每层有6个车位, 当第一层车停满后才许可使用第二层. ( 停车场可用一个二维数组实现, 每个数组元素存放一个车牌号 ) 每辆车信息包含车牌号, 层号, 车位号, 停车时间共4项. 其中停车时间按分钟计算 2. 假设停车场初始状态为第一层已经停有4辆车, 其车位号依次为1—4 , 停车时间依次为20, 15, 10 , 5 . 即先将这四辆车信息存入文件“car.dat”中( 数组对应元素也要进行赋值 )。 3. 停车操作: 当一辆车进入停车场时, 先输入其车牌号, 再为它分配一个层号和一个车位号(分配前先查询车位使用情况, 假如第一层有空则必需停在第一层), 停车时间设为5 , 最终将新停入汽车信息添加文件“car.dat”中, 并将在此之前全部车停车时间加5。 4. 收费管理(取车): 当有车离开时, 输入其车牌号, 先按其停车时间计算费用, 每5分钟0.2元. (停车费用可设置一个变量进行保留), 同时从文件“car.dat”中删除该车信息, 并将该车对应车位设置为可使用状态(即二维数组对应元素清零). 按用户选择来判定是否要输出停车收费总计。 5. 输出停车场中全部车辆信息。 6. 退出系统。 (五)为小型会议设计一个参会人员管理程序 要求: (1)登录参会人员下列信息: ·姓名(name); ·性别(sex); ·年纪(age); ·单位(department) ·房间号(room-num)(设每个房间只住一人,房间号为101#—120#,…,501#—520#)。 (2)主菜单应最少包含以下多个菜单项: 人员登录、显示报到人员信息、查询、统计、修改、删除 (3)程序应分别用多个个函数实现以上功效: ·随时对报到人员进行登录(login),来客登记房间是依据客人要求分配;假如客人申请房间已经有些人登记了,能够让客人重新申请;假如全部房间全部已经住满,则拒绝再进行人员登录; ·随时按所住房间号(由小到大)输出(print)已报到人员信息; ·能够依据姓名实现对人员信息查询; ·能够依据单位对和会人员进行分类统计,并输出统计结果; ·能够修改和会人员信息; ·能够删除某个参会人员,并清空其所住房间; (3)