计算机编程强化训练任务书[2023-08-22]

计算机编程强化训练任务书[2023-08-22]

一、实践目的
1) 熟练掌握计算机编程类相关课程知识;
2) 熟练使用计算机编程软件;
3) 掌握计算机编程的基本方法,能根据任务需求进行程序设计与开发。
二、实践初始条件
1) 已学习并掌握计算机编程类相关课程知识,如C程序设计基础A、程序设计方法、面向对象程序设计、数据库与信息系统等。
2) 选择一种计算机编程软件,并掌握它的基本操作。
三、实践要求
1) 每个学生选一个题目,学生可以组成小组合作完成一个题目,每一个题目小组不能超过2个学生;
2) 每个学生的实践报告需独立完成,并避免与其他选同样题目同学在内容上出现无原则的重复。小组内部,两个学生的实践报告要区分不同分工;
3) 根据选题的功能要求,进行程序设计与开发,并要求在计算机编程软件中调试通过;
4) 根据设计过程与调试结果完成实践报告,报告内容与格式要求详见实践报告模板。
5) 评分和题目的难度系数有关。

四、实践选题

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

1、通讯录管理系统(难度等级8)

通讯录是一个可以记录亲人、好友信息的工具,利用C++来实现一个通讯录管理系统。系统需要实现的功能如下:
(1)添加联系人:向通讯录中添加新人,信息包括(姓名、性别、年龄、联系电话、家庭住址)最多记录1000人
(2)显示联系人:显示通讯录中所有联系人信息
(3)删除联系人:按照姓名进行删除指定联系人
(4)查找联系人:按照姓名查看指定联系人信息
(5)修改联系人:按照姓名重新修改指定联系人
(6)清空联系人:清空通讯录中所有信息
(7)退出通讯录:退出当前使用的通讯录

2、班级学生成绩管理系统(难度等级8)

某班有最多不超过30人(具体人数由键盘输入)参加期末考试,最多不超过6门(具体门数由键盘输人)。定义结构体类型描述学生信息,学生信息包括学号、姓名、多门课的成绩、总成绩和平均成绩。用结构体数组作为函数参数,编程实现如下菜单驱动的学生成绩管理系统。
(1)输入每个学生的学号、姓名和各科考试成绩
(2)计算每门课程的总分和平均分。
(3)计算每个学生的总分和平均分。
(4)按每个学生的总分由高到低排出名次表
(5)按学号由小到大排出成绩表。
(6)按姓名的字典顺序排出成绩表。
(7)按学号查询学生排名及其考试成绩
(8)按姓名查询学生排名及其考试成绩。
(9)按优秀(90100)、良好(8090)、中等(70~80)、及格 (6070)、不及格(059)5个类别,对每门课程分别统计每个类别的人数以及所占的百分比。
(10) 输出每个学生的学号、姓名、各科考试成绩以及每门课程的总分和平均分。

3、电子钟(难度等级9)

电子时钟主要包含4个功能模块:
(1)电子时钟界面显示模块
调用C 语言图形系统函数和字符屏幕处理函数画出时钟程序的主界面。主界面包括电子时钟界面和帮助界面两个部分。电子时钟界面包括一个模拟时钟运转的钟表和个显示时间的数字钟表。帮助界面主要包括一些按键的操作说明。
(2)电子时钟按键控制模块
该模块主要完成两大功能。第一,读取用户按键的键值;第二,通过对键盘按键值的判断,执行相应的操作,如光标移动、修改时间等。
(3)时钟动画处理模块
该模块通过对相关条件的判断和时钟指针坐标点的计算,完成时针、分针、秒针的擦除和重绘,以达到模拟时钟运转的功能
(4)数字时钟处理模块
该模块主要实现数字时钟的显示和数字时钟的修改。数字时钟的修改,用户可以先按键定位需要修改内容的位置,然后通过按向上键<↑>或向下键<↓>来修改当前时间。

4、上位机监控软件(难度等级9)

实现温度、电流、电压、GPS(选择其中某一或几个)等数值的上位机监控软件设计:
(1)设计硬件电路,完成以上传感器的采集。
(2)设计通信电路,可以是串口、232、485、CAN、以太网实现等与上位机通信。
(3)可使用C++、VC、Delphi、QT、Electron、WPF等实现上位机软件。
(4)上位机软件能将数据存入数据库中,实现增、删、改、查功能。
(5)实现数据报表功能。

5、英文拼字游戏(难度等级7)

设计一款简单的英文拼字游戏,玩家在六次尝试机会之内,猜出一个五个字母的单词。
游戏界面是一个 5x6 的方块阵列。玩家通过键盘输入一个猜测结果后,游戏会给字母方块标上颜色,提示猜测的准确性:
绿色:说明答案里有这个字母、所在位置也正确;
黄色:说明答案里有这个字母、但不在这个位置;
灰色:说明答案里没有这个字母。
玩家根据获得的提示继续尝试,直到猜对答案,或者用尽六次机会。

开发环境:建议使用C/C++和EGE(Easy Graphics Engine)https://xege.org 图形库实现。单词库https://pan.baidu.com/s/1QaLmDeryzGk_GBRvlWY_xA 提取码9csd 。

6、细胞生命游戏(难度等级7)

某一细胞的邻居包括上、下、左、右、左上、左下、右上与右下相邻之细胞,规则如下:
孤单死亡:如果细胞的邻居小于一个,则该细胞在下一次状态将死亡。
拥挤死亡:如果细胞的邻居在四个以上,则该细胞在下一次状态将死亡。
稳定:如果细胞的邻居为二个或三个,则下一次状态为稳定存活。
复活:如果某位置原无细胞存活,而该位置的邻居为三个,则该位置将复活一细胞。
设地图大小为40x25的网格,每个小格中可以有一个细胞生命,小格有生命为黑色,无生命为白色。小格初始生命状态随机,每500毫秒地图中所有生命状态变化一次。

开发环境:建议使用C/C++和EGE(Easy Graphics Engine)https://xege.org 图形库实现。

7、八皇后问题(难度等级7)

在8×8格的国际象棋上摆放8个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,绘制出正确解法的棋盘和皇后棋子。每按下一次空格键,切换到下一种解法的显示。按下ESC键退出程序。

开发环境:建议使用C/C++和EGE(Easy Graphics Engine)https://xege.org 图形库实现。

8、贪吃蛇游戏(难度等级7)

实现一个简易的贪吃蛇游戏。用上下左右键控制蛇的方向,寻找吃的东西,每吃一口就能得到一定的积分,而且蛇的身子会越吃越长,蛇不能碰墙,不能咬到自己的身体,不能咬自己的尾巴,等到了一定的分数,就能过关。

开发环境:建议使用C/C++和EGE(Easy Graphics Engine)https://xege.org 图形库实现。

9、高精度小数计算(难度等级6)

使用c/c++语言;
实现高精度小数计算,保留小数点后30位;
输入输出方式自定义;
涉及到的运算独立编写,不得使用现成的API或库函数。
编程环境:VS、QT,或其他自选,VS或QT环境下可选择控制台项目或窗口项目,设计具有交互功能的ui界面可额外加分。

10、简易聊天程序(难度等级8)

使用c/c++语言;
利用TCP/IP协议,实现局域网内的聊天通信,可互发消息及图片,并实现通信记录保存;
ui风格自拟。
编程环境:VS、QT,或其他自选,VS或QT环境下选择窗口项目。

11、矩阵卷积运算(难度等级6)

使用c/c++语言;
对任意维度≥7的矩阵实现卷积运算(卷积矩阵维度=3,特征自拟),输出原始矩阵与卷积运算后的特征矩阵
涉及到的运算独立编写,不得使用现成的API或库函数
编程环境:VS、QT,或其他自选,VS或QT环境下可选择控制台项目或窗口项目,设计具有交互功能的ui界面可额外加分。

12、矩阵运算(难度等级8)

使用c/c++语言;
实现矩阵加减乘、转置、伪逆运算;
矩阵大小在允许范围内随意输入(m×n, m<10, n<10),运算选择输入方式自定义,结果输出方式自定义;
涉及到的运算独立编写,不得使用现成的API或库函数。
编程环境:VS、QT,或其他自选,VS或QT环境下可选择控制台项目或窗口项目,设计具有交互功能的ui界面可额外加分。

13、扫雷程序(难度等级10)

使用c/c++语言;
仿照微软扫雷游戏,编写扫雷应用,按照初级难度等级设计雷区大小;
具有计时功能,用户可自选地雷样式;
ui风格自拟。
编程环境:VS、QT,或其他自选

14、五子棋程序(难度等级8)

使用c/c++语言;
编写五子棋程序,实现双人对弈,棋盘大小可自选(范围[10,15]),程序可自动判断胜负;
ui风格自拟。
编程环境:VS、QT,或其他自选

15、日期计算(难度等级6)

按照 **** ** **(年 月 日,比如2023 4 25)格式输入一个具体的年月日期,通过程序计算:
该日期是这一年度的第几天。
如果输入格式非法或日期本身无效,则输出“输入日期有误!”的提示。

16、英文单词转换器(难度等级6)

编写一个英文单词转换器,规则如下:
不计大小写
如果单词以辅音开头,则将起始辅音到第一个元音前的辅音字符串整体移动到单词词尾,并在末尾加上ay,如:Scram转换为amScray
如果单词以元音(a,e,i,o,u)开头,则在单词末尾加way,如:is转换为isway
如果针对一个句子进行单词转换,则对句中每一个单词进行上述规则的转换,原句中的空格、标点符号等一律保持不变,如:What are you doing?转换为atWhay areway ouyay oingday?

17、月历打印(难度等级6)

根据用户输入的**** *(年 月,比如2023 4)打印出该月的日历。

18、遍历程序(难度等级6)

编写一个先序遍历的程序访问上述二叉树中所有节点,并打印遍历结果。

19、图书管理系统(难度等级8)

使用C或C++,选择一种计算机编程软件和数据库管理系统来实现一个图书管理系统。系统需要实现的功能如下:
(1)添加、删除和修改图书信息:向系统中添加、删除和修改图书信息,信息包括(书号,书名,作者和出版社),对每本被借出的图书保存有读者号、借出日期和应还日期。
(2)查找图书信息:按照关键词查询图书信息并显示。
(3)添加、删除和修改读者信息:向系统中添加、删除和修改读者信息,信息包括(读者号、姓名,性别、联系电话)
(4)查找读者信息:按照关键字查找指定读者信息并显示。
(5)查询哪些图书已经超期但是还没有还。可以自行扩展查询功能。

20、学生选课管理系统(难度等级8)

使用C或C++,选择一种计算机编程软件和数据库管理系统来实现一个学生选课管理系统。系统需要实现的功能如下:
(1)添加、删除和修改学生信息:向系统中添加、删除和修改学生信息,信息包括(学号、姓名、性别、班级)。
(2)查找学生信息:按照关键词查询相关学生信息并显示。
(3)添加、删除和修改课程信息:向系统中添加、删除和修改课程信息,信息包括(课程号、课程名、先修课)。
(4)查找课程信息:按照关键字查找相关课程信息并显示。
(5)能够查询某个学生选修的某门课的成绩,以及选修了某门课的所有的学生信息等。可以自行扩展查询功能。

21、仓库管理系统(难度等级8)

使用C或C++,选择一种计算机编程软件和数据库管理系统来实现一个产品仓库管理系统。系统需要实现的功能如下:
(1)添加、删除和修改仓库信息:向系统中添加、删除和修改仓库信息,信息包括(仓库号、地点和面积)。
(2)查找仓库信息:按照关键词查询相关仓库信息并显示。
(3)添加、删除和修改产品信息:向系统中添加、删除和修改产品信息,信息包括(产品号、产品名和价格)。
(4)查找产品信息:按照关键字查找相关产品信息并显示。
(5)能够查询某个仓库中存放某个产品的数量,以及某个产品存放在哪个仓库等。可以自行扩展查询功能。

22、住院病人管理系统(难度等级8)

使用C或C++,选择一种计算机编程软件和数据库管理系统来实现一个住院病人管理系统。系统需要实现的功能如下:
(1)添加、删除和修改病人信息:向系统中添加、删除和修改仓库信息,信息包括(住院号、姓名、年龄、住院时间、出院时间)。
(2)查找病人信息:按照关键词查询相关病人信息并显示。
(3)添加、删除和修改病房信息:向系统中添加、删除和修改病房信息,信息包括(病房号、床位数量、负责医生)。
(4)查找病房信息:按照关键词查询相关病房信息并显示。
(5)能够查询有空位的病房信息,以及某个病人的负责医生等。可以自行扩展查询功能。

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

五、实践报告要求
格式要求:
A4纸单面打印输出;
正文,小四号,宋体;图表中文字,五号,宋体;一级标题,四号,黑体
行距,最小值,20-24磅
页边距,上下20mm,左25mm,右20mm

内容要求:
1)报告内容要求按系统设计步骤来阐述,即包括
(1) 需求分析;包括系统功能需求、性能需求、数据需求、外部接口、待解决问题等;
(2) 方案设计;包括系统架构、功能模块设计、数据库设计、接口设计等
(3) 详细设计;在方案设计基础上,扩展细化,包括交互界面、性能、输入/输出
项等
(4) 测试;调试记录(要求示出程序调试过程、结果,对于调试过程中出现的问题可简要分析并给出解决方案等)
(5) 总结;对系统设计过程做个总结,可以写一些个人感受。
2)报告中附上封面与成绩评定栏
3)模板样例见附页

计算机编程强化训练
学 院
专 业
班 级
姓 名
学 号
任课教师

2023 年 月 日

计算机编程强化训练
评分表

序号 考核内容 评分标准 总分 评分
1 需求分析 根据需求分析是否合理进行评分 12.5(分)
2 方案设计 根据方案设计是否合理进行评分 12.5(分)
3 功能演示 每人对所做的系统进行演示。将根据演示效果进行评分。 12.5(分)
4 答辩 每人对所做的系统进行答辩。将根据现场表现进行评分。 12.5(分)
5 实验报告 根据详细设计合理性、功能实现程度以及报告的规范性进行评分 50(分)
合计
100(分)

  1. 需求分析
  2. 方案设计
  3. 详细设计
  4. 测试
  5. 总结
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值