C语言课程设计作业题目

更新时间:2024-07-07 06:12:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

2011级电子信息、光信息专业及物理学专业

《高级语言程序设计》课程设计大纲

一、课程设计目的

《高级语言程序设计》课程设计是电子信息、光信息专业以及物理学专业集中实践性环节之一,是学习完《高级语言程序设计》课程后进行的一次全面的综合练习,其目的在于加深对程序设计基本知识的理解,掌握使用C语言进行模块化软件设计的基本方法,提高通过编写程序解决实际问题的能力,为今后从事设计工作和后续各种编程课程的学习打好基础。 二、课程设计内容及要求

用C语言制作一个小型软件系统。所设计的系统虽属“小型”,但应包括有完整软件中常见的技术要素和功能,如软件封面、用户登录、主菜单、功能化模块、操作帮助等。每位学生在附录中的课程设计题中可自选一题,要求学生根据题目的基本要求,编写程序,并写好课程设计说明书。学生也可自拟课程设计题。 每一道课程设计题选题人数不得超过2人,如两人选择同一题,在此题的课程设计中不得雷同,否则视为课程设计无效。自拟题人数不限。

课程设计题参见附录。 三、课程设计时间

课程设计时间设定为2-3周,在学习完《高级语言程序设计》课程后进行。最后2-3次课为课程设计演示答辩时间。 四、课程设计说明书编写规范

课程设计说明书是是项目设计的理论依据,是整个设计工作的整理和总结,同时也是审核设计能否满足使用要求的技术文件之一。此外,从软件工程的观点来看,软件文档是软件的重要组成部分。所以,学习写好课程设计说明书也是完成课程设计的重要内容。

课程设计说明书的内容: ①封面(见附录) ②目录(标题,页次) ③设计任务(参见附录)

④正文,一般有如下几个方面的内容:

? 需求分析 ? 系统模块图 ? 模块说明 ? 用户使用说明 ? 测试结果 ⑤设计小结

⑥参考文献(不少于三则) 书写格式:

[1]谭浩强.C程序设计(第二版).北京:清华大学出版社,1999 ⑦附录(源程序)

课程设计说明书的编写要做到内容完整、条理清楚、算法清晰、文字通顺,字体工整,源程序的书写格式应符合规范。

课程设计说明书必须用钢笔、签字笔书写或用打印机打印。纸张规格为16开,标明页次,装订成册。

课程设计说明书应在答辩演示之前上交给指导教师。 五、课程设计的考查

由指导教师根据学生完成任务的情况、课程设计说明书的质量和课程设计过程中的工作态度、答辩演示情况等综合打分。成绩评定实行优秀、良好、中等、及格和不及格五个等级。不及格者不能得到相应的学分,需重新做课程设计,经指导教师考核及格后,方可取得相应学分。 附图:课程设计说明书封面格式

三峡大学理学院XXXX级XXXXXXXXXXXX专业 《高级语言程序设计》课程设计 说明书 设计题目: 班 级: 学 号: 姓 名: 完成日期:

附录:

课程设计题

第一题:为中小学生编写一个与中小学生智力活动有关的小型程序,可进行以下程序处理:

①求一元二次方程任意根 ②简单屏幕游戏

③小学算术测验系统(含随机出题、自动评分、查看正确答案、错题重做功能) ④简单通信录(要求使用结构体和磁盘文件读写)

【说明】整个程序应有软件封面、说明和帮助文档功能,并加入用户登录(密码验证)功能程序。封面上应标明软件名称、版本号、编程者姓名、班级、完成日期和功能菜单。所有要求用户输入处都应有适当的人机对话。整个程序设计应按模块化设计的要求,分模块设计和调试,再完成整个系统的调试。每一模块运行结束都应回到主菜单,正常情况下只能从主菜单中退出,且正常退出后应有适当的告别辞。 参考示例:

1、软件封面(参考)

*****************************************

* 《高级语言程序设计》课程设计 * * 中小学生电子助手 *

***************************************** 程序设计:XX系XX专业XXX

XXXX年XX月XX日

2、登录成功后主菜单(参考)

选择菜单

a、一元二次方程求根

b、五子棋游戏

c、小学四则运算测验 d、通信录 e、退出

请选择(a、b、c、d或e):_

第二题:工资管理系统设计

1、需求分析:工资信息存放在文件中,提供文件的输入、输出等操作;要实现浏览功能,提供显示、排序操作;而查询功能要求实现查找操作;另外还应该提供键盘式选择菜单以实现功能选择。

2、总体设计:整个系统可以分为信息输入、信息添加、信息浏览、信息排序、信息查询和信息统计模块。

3、详细设计

工资信息采用结构体数组:

Struct Salary_Info {

int Card_No; //工资卡号

Char name[20]; //姓名 int month; //月份

float Init_Salary; //应发工资 float Water_Rate; //水费 float Electric_Rate; //电费 float Final_Salary; //实发工资

}SI[MAX]; //SI[MAX]中每个数组元素对应一个职工工资信息

(1)主函数提供输入、处理和输出部分的函数调用,各功能模块采用菜单方式选择。

(2)输入模块 按照工资卡号、姓名、月份、应发工资、水费、电费的顺序输入信息。

Int sex; //0 表示男,1 表示女 Char stuNo[10]; //学号

Int classNo; //班号 ?? //其他信息 }StuCard;

(1)主函数

主函数中,显示功能菜单:信息输入(1) 信息查找(2) 信息修改(3) 信息删 除(4) 信息统计(5) 按相应的数字键则进入相应的计算模块。 (2)数据输入模块 输入学生的学生证信息,把该信息以追加的方式写入学生证信息管理文件。

(3)数据查找模块 进入该模块,首先显示提示菜单:按学号查找(1) 按班级查找(2) 按学号查找,则提示输入学号,然后采用基本查找算法(顺序查找)在学生证信息文件中查找学号字段,当找到该记录时,则输出该学生信息,停止继续查找。 按班级查找,则提示输入班级班号,然后采用基本查找算法(顺序查找)在学生证信息 文件中查找班号字段,如果班号匹配,则输出该学生信息,直到文件结束。

(4)数据修改模块 在主菜单中选择(3) ,则进入数据修改模块。屏幕上提示输入要修改的学生学号。输入 学号后,则采用基本查找算法找到该学生信息,修改之。

(5)数据删除模块 与数据修改模块相似,只是找到相应的学生信息后删除,即不再写入文件。

(6)数据统计模块 提供对班级学生数、女生人数、男生人数的统计。通过菜单选择统计字段。建立一个计 数器,初始化为 0。例如统计班级学生数,则提示输入班号,然后查找学生证信息文件,比 较班号,如果匹配,则计数器加 1,当文件结束后,输出计数器的值。女生人数和男生人数 的统计与此类似。 第二十题:客房管理系统

1、需求分析:实现用户登记功能,要提供结构体的输入操作;实现统计功能,要提供相应的统计操作; 实现查询功能,要提供查找操作;实现修改功能,要提供修改操作;另外还要提供键盘式菜 单实现功能选择。

2、总体分析:整个客房管理系统被设计为用户登记模块、统计模块、查询模块和修改模块。

3、详细分析

数据结构采用结构体,设计如下结构体:

//客户结构体 struct Client

{ char Name[20]; //姓名

int Sex; //性别,0 表示男,1 表示女 int Age; //年龄

char ID_card[20]; //居民身份证;

int year; int month; int date; //住店时间 }; //客房结构体 struct Hotel

{ int Room_ID; //房间号

int Tel; //电话 int Price; //价格

bool Sign; //标记房间是否为空房间;

struct Client Client_list; //实现两个结构体的嵌套 }Room[NUM];

(1) 用户登记模块 提示用户输入自身信息以及客房信息,把数据存入 Room 数组中。 (2) 统计模块 18 设置计数器,顺序遍历 Room 数组来实现。实现对房客数、某一天的房客数的统计。

(3) 查询模块 通过基本查找算法查找 Room 数组。可以按房间号、价格、房间标记、用户姓名、居 民身份证查询。

(4) 修改模块 采用基本查找算法在数组中找到要修改的数据,直接更改。 第二十一题:商品销售管理系统设计 功能要求:

某公司有四个销售员(编号:1-4),负责销售五种产品(编号:1-5)。每个销售员都将当天出售的每种产品各写一张便条交上来。每张便条包含内容: 1)销售员的代号

2)产品的代号

3)这种产品的当天的销售额

每位销售员每天可能上缴0-5张便条。假设,收集到了上个月的所有便条,编写一个处理系统,读取上个月的销售情况(自己设定),进行如下处理。 1)计算上个月每个人每种产品的销售额。

2)按销售额对销售员进行排序,输出排序结果(销售员代号) 3)统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果(需输出产品的代号和销售额)

第二十二题:学生宿舍管理系统设计 【说明】实现简单的学生宿舍基本信息管理,宿舍的基本信息包括楼号、房间号、面积、所容纳人数、已入住人数等 基本要求:

(1)设计简单的菜单,能够进行系统功能选择。 (2)实现信息的录入功能。

(3)在已有信息的基础上添加新的记录。 (4)删除指定房间号的记录。 (5)修改指定房间号的记录 (6)实现信息的浏览功能 (7)按房间号查询功能 (8)按已入住人数排序功能 第二十三题:学生选修课程系统设计

【说明】假定有n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于60)自由选课。试设计一选修课程系统,使之能提供以下功能: (1)系统以菜单方式工作

(2)课程信息录入功能(课程信息用文件保存) (3)课程信息浏览功能

(4)查询功能:(至少一种查询方式)

按学分查询 按课程性质查询

(5)系统进入画面(静态或动画)

第二十四题:单项选择题标准化考试系统设计

功能要求:

(1)用文件保存试题库。(每个试题包括题干、四个备选答案、标准答案) (2)试题录入:可随时增加试题到试题库中。

(3)试题抽取:每次可随机从试题库中抽出N道题(N由键盘输入) (4)答题:用户可实现输入自己的答案。

(5)自动判卷:系统可根据用户答案和标准答案的对比实现判卷并给出成绩。

第二十五题:考勤系统设计

要求:设计一考勤系统。考勤信息记录了学生的缺课情况,它包括:缺课日期、第几节课、课程名称、学生姓名、学生学号、缺课类型(迟到、早退、请假及旷课)。系统具有以下功能:

(1)录入学生的缺课记录; (2)修改某个学生的缺课记录; (3)查询某个学生的缺课情况;

(4)统计某段时间内,旷课学生姓名及旷课次数,按旷课次数由多到少排序;

(5)统计某段时间内,有学生旷课的课程及旷课人次,按旷课人次由多到少排序;

(6)系统以菜单方式工作。

第二十六题:算24游戏 【说明】主要功能:

(1)能罗列出四张牌用四则运算凑成24的游戏。 (2)凑不成给出提示。 第二十七题:编写一万年历系统

要求:模仿现实生活中的挂历,编写程序要求当用户输入年份时能输出该年的日历,在日历上能够看出某天是星期几,可以显示任意一年任意一天,并能够知道是否是闰年等。

第二十八题:模拟时钟转动程序

要求:能模拟机械钟表行走,还要准确地利用数字显示日期和时间,在屏幕上显示一个活动时钟,按任意键时程序退出。 第二十九题:排考场座位程序

假设考场有8行8列的座位,每当一个学生进入考场就为他安排座位。主界面如下:

当选择1,用户输入准考证号,随机产生该学生座位的行号和列号,要求一个考生只有一个座位,已有考生的位置上不能再安排新的考生; 当选择2,取消某人的考场座位;

当选择3,输入行号列号,输出该考生的准考证号; 当选择4,输入某学生的准考证号,输出该学生的座位。 第三十题:背单词软件设计

要求:该系统是帮助学生背诵单词的软件,要求用户可以选择背诵的词库,并可以编辑自己的词库,系统可以给出中文,让学生输入其英文意,也可以输出英文让学生输入中文意思。并判断词义是否正确。如不正确给出提示并要求用户重新输入。如正确给以鼓励。还应有词语预览功能。

第三十一题:编程题上机考试系统 说明:随着计算机的普及和应用,对计算机的学习和考试的环境也逐渐从书本和试卷过渡到计算机环境上,为此目的设计此系统用于完成题目的生成、维护及使用等目的。

基本功能:试题的输入 试题的删除 试题的抽出 试题的显示

整套试题的保存

第三十二题:小学数学出题系统 说明:为小学生教学服务,能够根据小学生的需要随机抽出两位数的数学运算题,可根据需要进行加减乘除运算。由学生在电脑上答题,并对其判断正误和记分。另外可以根据需要随机抽出四则运算的混合运算题同样应对其判断正误和记分。 基本功能: 抽题选择功能

两位数四则与算的出题功能 四则混合运算的抽题功能 答案判断正误功能 分数累积功能 出题存储功能等

第三十三题:学生成绩评定系统设计

说明:根据班级中各个学生的各科成绩,计算出每个人的总分平均分。并挑出成绩不及格等不符和评定讲学金基本条件的学生。对符合奖学金评定条件的同学,排序输出获得奖学金的同学的名字和等级。 基本功能:

输入每个学生的各方面情况 算出每个学生的总分平均分

挑出符合奖学金评定条件的学生(列表显示) 排序 输出

资料存储。

查询每个学生的成绩

第三十四题:电脑公司进销存管理系统设计

说明:该系统用于处理某电脑公司的设备买入,卖出,仓储等设备账目。在买入设备时,记录设备的数量型号(如computer,keyboard)和价钱,并在库房记录中添加设备,在卖出设备时从库房中减掉该设备,并根据卖出的数量型号和价钱得出每一笔买出的利润。每个一段时间盘点库房和账目计算出利润等数据。 基本功能:

有货物管理(设备的添加,删除,修改) 有账目管理

可以查询账目清单

可以计算年度或月份或季度利润。

第三十五题:运动会分数统计系统设计

说明:编写一个运动会分数统计程序,实现检录,记分,排序,评奖等功能 基本功能: 运动员检录

运动员成绩记录 运动员成绩排序 运动员评奖

第三十六题:模拟储蓄所

说明:编制一个软件模拟储蓄所业务的处理,包括存款,取款,利息计算等 基本功能: 开户处理 存款处理 取款处理 销户处理

利息计算 帐目维护

第三十七题:办公用品库管员系统设计 说明:用于办公用品的管理,办公用品的入库应在库房账目上加入货物的入库日期,货物型号,数量,种类等,在货物出库时应登记出库日期,数量种类等指标,手续经办人签名等。并有库房盘点功能。 基本功能:

办公用品入库登记功能 办公用品出库登记功能

盘点功能:库中实际的办公用品存量

办公用品超出存储范围,或没有办公用品的预警功能

第三十八题:备忘录设计

说明:用于实现利用计算机实现备忘录功能,包括备忘事件的输入,背忘事件的提醒,备忘事件的排序,备忘事件的列表显示等功能。 基本功能:

备忘事件的输入(包括基本的备忘时间,提醒时间,具体内容等)

备忘事件的提醒(当用户输入当前日期和时间后,输出该时间应该做的事情) 备忘事件的排序(根据事件的轻重缓急对每一天的备忘事件进行排序,并对非常重 要的事件提前提醒)

用户输入一个时间段后,把该时间段的所有备忘事件输出)

第三十九题:毕业生管理系统设计

说明:此系统用来完成对于毕业生的信息进行管理,能够统计就业率,对就业进行指导

基本功能:

毕业生信息录入 毕业生信息维护 就业信息录入 就业信息列表 毕业生信息查询 毕业生就业率统计

第四十题:等级考试报名系统设计

说明:近年来,参加计算机考试的人员日益增多,用计算机来降低工作量成为了一种迫切需求,为此目的编写软件 基本功能: 报名信息维护 等级分类 等级查询

身份证号查询 姓名查询 学号查询

第四十一题:彩票系统设计

说明:用于根据各种要求,选择彩票号码,记录彩票购买人资料,随机产生中奖号码,并根据中奖号码找到中奖彩民的资料并显示出来。 基本功能: 购买彩票功能 自动选号功能 奖金累计功能 开奖功能

第四十二题:老虎机游戏 说明:用于利用计算机实现老虎机游戏功能。三排自动产生的随机数字动态变化,用户按某一键终止数字变化,如果三排数字相同,则为中奖,并给以鼓励。否则为失败。 主要功能: 数字动态变化 中奖判断 筹码计算

第四十三题:猜数字游戏

说明:每次随机产生5个数字,提供10次机会,若猜中进入下一次猜数,每猜中一次奖励100分,可中途退出猜数游戏,可以累计分数,和产生积分榜 基本功能: 用户注册

用户积分查看

第四十四题:爆炸的模拟 第四十五题:火焰的模拟 第四十六题:简易台球程序 第四十七题:自拟题(人数不限)

本文来源:https://www.bwwdw.com/article/bqj.html

Top