《C语言程序设计》课程设计任务书(10题)[2024-01-05]

《C语言程序设计》课程设计任务书(10题)[2024-01-05]

《C语言程序设计》课程设计是对学生的一种全面综合训练,它包括问题分析,总体结构设计,用户界面设计,程序设计基本技能和技巧,多人合作,以至一整套软件工作规范的训练和科学作风的培养。是与课堂听讲、自学和练习相辅相成的必不可少的一个教学环节。通常,课程设计的课题比平时的习题复杂得多,也更接近实际。课程设计着眼于理论与应用的结合点,使学生学会如何把书上学到的知识用于解决实际问题,培养程序设计工作所需要的知识综合能力和动手能力;另一方面,能使书上的知识变“活”,使学生更好地深化理解和灵活掌握教学内容。为了达到上述目的,本次课程设计安排了10个设计课题,训练重点在于基本的程序设计方法和分析问题的能力,而不强调面面俱到。
要求学生一人一题独立完成设计,并提交课程设计相关材料。

一、目的
全面熟悉、掌握C语言基本知识,掌握C程序设计中的顺序、分支、循环三种结构及数组、函数和C语言基本图形编程等方法,把编程和实际结合起来,增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,养成提供文档资料的习惯和规范编程的思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环节打下较扎实的基础。

二、设计要求
掌握结构化程序设计的主体思想,以自顶向下逐步求精的方法编制程序解决一些实际的问题,为将来编写软件积累一些典型的案例处理经验。
(1)请按学号最后一位的号码顺序选择课题号,并在规定的时间内独自完成相关课题的C源程序编写、调整和运行。
(2)按本任务书的要求,按附录的要求编写《课程设计报告》;
(3)将课程设计报告及程序运行视频演示(5分钟内,视频少于200M)在学习通的C程序设计课程设计课程中提交(请注重学习通中提交的时间节点)。

三、进度安排
周一: 课题讲解,查阅资料
周二: 需求分析,总体设计
周三: 详细设计、模块编程、测试
周四: 模块编程、测试
周五: 模块集成、完善程序
周末:自行撰写课程设计报告

四、报告规范
1.需求分析
1)题目分析:深入分析题意。
2)问题建模:拟解决的方法与思路。
2.概要设计
1)程序由哪些模块组成以及各个模块之间的层次结构、模块的调用关系;每个模块的功能。
2)课题的总体数据结构;即要存储什么数据,这些数据是什么样的结构,它们之间有什么关系等。
3.详细设计

  1. 采用C语言定义相关的数据类型。
  2. 画出关键算法的流程图或伪代码。
    4.编码实现
    5.系统测试
    6.课设小结
    本次课程设计的经验教训、心得体会。
    7.附件
  3. 源代码:课程设计的完整源代码,代码要求规范,并添加详细的注释。
  4. 参考书目

五、课程设计选题例表

课题0:销售管理系统

某公司有四个销售员(编号:1-4),负责销售五种产品(编号:1-5)。每个销售员都将当天出售的每种产品各写一张便条交上来。每张便条包含内容:销售员的代号 、产品的代号 、这种产品的当天的销售额。
每位销售员每天可能上缴0-5张便条。假设,收集到了上个月的所有便条,编写一个处理系统,读取上个月的销售情况(自己设定),进行如下处理。
(1) 计算上个月每个人每种产品的销售额。
(2) 按销售额对销售员进行排序,输出排序结果(销售员代号)
(3) 统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果(需输出产品的代号和销售额)
(4) 输出统计报表

                            销售统计报表 
                             产品代号                       销售之和 

销售员代号 1 2 3 4 5
1
2
3
4
每种产品之和 总和

课题1:简单的学生成绩管理程序

程序设计功能及要求:
(1) 总人数定义为宏,数据使用文件存放;
(2) 输入学生姓名、学号、五门课成绩,计算每个学生五门功课的平均分,并按平均分排列名次,若平均分相同则名次并列;结果写入文件并按格式打印在屏幕上。
⑶ 统计全班每门课程的平均分,并计算各分数段(60以下,6069,7079,80~89,90以上)的学生人数;结果写入文件,并按格式在屏幕上打印;
⑷ 在屏幕上打印出所有不及格学生的下列信息:学号,不及格的课程名,该不及格课程成绩;
⑸ 在开始画面加入简单的菜单便于选择各种功能。
例:
1学生条目输入
2 成绩统计
3分数段统计
4不及格学生筛选
⑹文件格式要求
① 原始数据文件格式 (具体数据和项目自行编写)
学号 姓名 英语 C语言 高等数学……………
1 张三 76 89 78
2 李四 …. …. ….
② 输出数据文件(由程序自动生成)
a. 学生综合成绩文件。
b. 学号 姓名 英语 C语言 高等数学 …………….平均成绩 名次
1 张三 76 89 78 ……………
2 李四 …. …. ….
c. 统计结果文件。
d. 分数段 英语 C语言 高等数学 ………………….
<60 2 …
60~69 8 …
70~79 5 …
80~89 10 …
⑺加入优等生统计功能,要求按优等生条件筛选出优等生的条目存入单独文件,并输出到屏幕。
优等生标准(满足之一即可):

  • 平均成绩上80。
  • 平均成绩及格但未上80,有单科成绩上90。
  • 平均成绩未及格,有单科满分。

课题2:电子英汉词典设计

英汉词典作为一个常用的学习工具,是我们经常要使用的。该系统要求完成一个简单的电子英汉词典的功能,如:单词的查找、增词、删除、修改和维护等工作。程序设计要求及功能如下:
(1)在计算机中建立有限规模的电子英汉词典(文件),利用程序实现电子英汉词典的查找、增词、删除、修改和维护工作。
(2)词典的内容为:每行对应一个词条,每个词条由两个字符串组成,字符串用若干空格符分开;前一个是单词字符串(英文),后一个是释义字符串(中文),使用分号作为多个释义的分隔符(无空格)。
(3)对单词和释义字符串长度的限定分别为不少于20个与40个字符,词条数限定为不多于200条。
(4)采用菜单工作方式。在一个操作执行之后,程序询问是否继续执行该操作。如输入Y或y,则重复同一操作,不退回到菜单;如输入其它信息,则回到菜单等待另一次选择。仅当选择退出操作时,程序应询问是否将修改后的词典存盘,并根据用户选择存盘退出或不存盘退出。
要求整个设计以人为本,用户界面友好。
(5)测试数据:要求被选用的词条有200个左右,以中学的单词为主。

课题3:员工销售统计及奖金发放系统

程序设计功能及要求:
⑴ 总人数不定,开始先输入员工的人数及工号进行初始化,数据使用文件存放;
⑵ 根据员工的工号及季度提示输入对应的销售额,存入数据文件。
⑶ 奖金计算功能,根据以下要求编写出奖金的计算应得奖金并保存在文件中。

企业总销售额 员工奖金提成比例(占其自己销售额的比例)
100万及以下 10%
100万到150万 11%
150万到200万 12%
200万到250万 13%
250万到300万 14%
300万以上 15%

② 年度销售业绩最高者,额外获得1万元。
⑷ 统计功能,统计全年企业的销售额和个人销售额及员工的奖金,并评选出销售总额最高的员工为销售之星及每季度销售最高的为季度之星。
⑸修改功能,输入要修改的员工号及季度,修改该季度的销售额,并且对应的统计数据也随之改变。
⑹ 在开始画面加入简单的菜单便于选择功能。
1系统初始化
2 员工销售额输入
3数据更改
4统计
5奖金发放
(7) 文件格式自己根据要求选用恰当的排列格式。

课题4:通信录管理系统设计

设计出模拟手机通信录管理系统,实现对手机中的通信录进行管理。功能要求如下:
(1) 查看功能:选择此功能时,列出下列三类选择。
A 办公类 B 个人类 C 商务类
当选中某类时,显示出此类所有数据中的姓名和电话号码
(2) 增加功能:能录入新数据(包括:姓名、电话号码、分类(可选项有:A 办公类 B 个人类 C 商务类)、电子邮件)。例如:

杨春  15070485523   商务类  chuny@126.com

当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入;当通信录中超过15条信息时,存储空间已满,不能再录入新数据;录入的新数据能按递增的顺序自动进行条目编号。
(3) 拔号功能:能显示出通信录中所有人的姓名,当选中某个姓名时,屏幕上模拟打字机的效果依次显示出此人的电话号码中的各个数字。
(4) 修改功能:选中某个人的姓名时,可对此人的相应数据进行修改。
(5) 删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。
(6) 系统以菜单方式工作。

课题5:职工工资管理系统

功能设计要求如下:
(1) 系统以菜单方式工作。
(2) 输入记录:输入职工的姓名、ID号以及基本工资、职务工资、岗位津贴、医疗保险、公积金,然后计算出总工资,计算公式如下:
(3) 总工资=基本工资+职务工资+岗位津贴-医疗保险-公积金
(4) 该软件能建立一个新的数据文件或给已建立好的数据文件增加记录。
(5) 显示记录:根据用户需求显示所有职工或某一个职工工资信息。
(6) 修改记录:可以对数据文件的任意记录的数据进行修改并在修改前后对记录内容进行显示。
(7) 查找记录:可以对数据文件的任意记录的数据进行查找并在查找前后对记录内容进行显示。
(8) 删除记录:可删除数据文件中的任一记录。
(9) 统计功有: (A)计算各项工资平均工资及总工资, (B)统计符合指定条件(如职工工资前三项之和在3000元以上、30002000元、20001000元) 以内的工资职工人数及占总职工人数的百分比。©按字符表格形式打印全部职工工资信息表及平均工资(包括各项总的平均工资)。
(10) 保存数据文件功能。
例如:职工工资信息表

ID号 姓名 基本工资 职务工资 津贴 医疗保险 公积金- 总工资
01 张望 1286 794 198 109 135 2034
02 李明 1185 628 135 94 114 1740
03 王小民 895 438 98 64 73 1294
04 张效章 1350 868 210 116 150 2162
05 彭山 745 398 84 61 68 1098

各项平均工资 1092.2 625.2 145 88.8 108

课题6:图书管理系统

图书管理系统提供图书信息管理以及借还管理。图书信息至少包括:图书编号、书名、价格、作者、借还状态,用文件存储所有图书信息。系统提供以下功能:
(1) 增加图书信息,录入;
(2) 查询已有的所有图书信息;
(3) 删除图书;
(4) 修改图书基本信息;
(5) 根据书名、作者查找并显示相应的图书信息;
(6) 可以对所有图书按价格排序;
(7) 进行图借阅/归还操作:当某一本图书被借出后就不能再借,只有归还后才能借出。
(8) 系统以菜单方式工作。

课题7:实验室设备信息管理系统

实验室设备信息包含设备编号,设备名称,设备价格,设备数量,设备总价等信息,要求包括设备添加、删除、修改、查询等功能。具体描述如下:
(1) 系统以菜单方式工作。
(2) 输入记录模块:输入实验室设备信息,并计算出设备总价存入文件。
(3) 查询记录模块:可以根据设备编号,设备名称来查询实验室设备详细信息。
(4) 修改记录模块:可以根据设备编号,修改实验室设备详细信息。
(5) 删除记录模块:可以根据设备编号,设备名称,删除实验室设备信息。
(6) 统计模块:可以根据设备编号统计共有多少种设备。可以统计所有设备的总数量。
(7) 排序模块:对实验室设备信息按照设备价格进行排序。

课题8:职工信息管理系统设计

职工信息包括职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等(职工号不重复)。试设计一个职工信息管理系统,使之能提供以下功能:
(1)系统以菜单方式工作。
(2)职工信息录入功能(职工信息用文件保存)——输入。
(3)职工信息浏览功能——输出。
(4)查询功能:可按多种信息查询。
按姓名查询,按学历查询,按电话查询等
(5)职工信息删除功能。
(6)职工信息修改功能。
(6)职工信息排序:对职工信息按工资进行排序并显示。

课题9:车票管理系统

一车站每天有n个发车班次,每个班次都有班次号(1、2、3…n),固定的发车时间,固定的路线(起始站、终点站),大致的行车时间,固定的额定载客量,班次信息如下所示:

班次 发车时间 起点站 终点站 行车时间 额定载量 已定票人数
1 8:00 郫县 广汉 2 45 30
2 6:30 郫县 成都 0.5 40 40
3 7:00 郫县 成都 0.5 40 20
4 10:00 郫县 成都 0.5 40 2

用c设计一系统,能提供下列服务:
(1) 系统以菜单方式工作。
(2) 录入班次信息(信息用文件保存),可增加班次数据。
(3) 浏览班次信息,可显示出所有班次当前状总(如果当前系统时间超过了某班次的发车时间,则显示“此班已发出”的提示信息)。
(4) 查询路线:可按班次号查询 ,可按终点站查询
(5) 售票和退票功能
① 当查询出已定票人数小于额定载量且当前系统时间小于发车时间时才能售票,自动更新已售票人数
② 退票时,输入退票的班次,当本班车未发出时才能退票,自动更新已售票人数

源码联系UP主 -> https://space.bilibili.com/329101171

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值