C/C++2023暑期学生实训计划[2023-07-06]

C/C++2023暑期学生实训计划[2023-07-06]

2023暑期学生实训计划
第二阶段实训计划
1、 目的
通过集中训练的方式对学生以前所学知识进行巩固,强化学生动手实践能力,了解计算机解决实际问题的过程,初步了解计算机软件工程的开发步骤。
2、 组织
a) 安排若干题目,将学生分成若干组选题,尽量避免重复,每小组题目相同,但是每人必须独立完成。
b) 每天对学生的进度进行必要的监控,学生必须填写任务完成情况表,教师对每天学生的完成情况尽情检查。
c) 最终安排整个程序的检查。
3、 时间安排
(1)软件的总体设计(包括:了解需求、软件的功能设计(类似于学生成绩管理系统功能模块图),软件的总体构架(子函数的功能定义)、基本数据定义数据结构设计:(1天)(课后完成)
(2) 相关基本信息的整理与建立。(1天)(课后完成)
(3)子程序设计调试。(3天)(课堂完成)
(4)程序整体调试。(2天)(课堂完成)
(5)程序的验收、撰写程序设计实训报告,展示实训成果,指导教师对每个同学实训成果进行评价。(1天)(课堂完成)
第一部分:预备知识一(C语言知识)
(参考C语言教材12章—文件)
重点12.6节
详见所发暑期实训材料(6)
第二部分:预备知识二(系统开发思路)
思路一:采用课本12.6的思路。构建一个结构体作为存储结构来实现系统。适合处理操作、表与表之间的关系比较简单的系统。适合未学习数据结构的同学。
思路二:构建多个结构体数组或者单链表作为存储结构。处理前各文件读到各相应的存储结构中,在存储结构中做处理,处理结束后,将各存储结构中的数据写回文件中。适合处理操作、表与表之间的关系相对复杂的系统。适合已学习数据结构的同学。(本次实训强制采用此方案)
思路三:其他教材或自己设计的思路。
各位同学可以根据自己的实际情况采用以上思路中的任何一个实现。
第三部分:(题目)
注:以下涉及的rec文件均为二进制文件,txt文件均为文本文件。
1、学生成绩档案管理系统
[问题描述]
1、 至少实现显示基本信息、基本信息管理、学生成绩管理、考试成绩统计(每个学生5门课程)、根据条件查询等功能。
[要求与建议]
1、根据输出结果分析需要哪些数据,为此决定文件结构。
2、文件的设计要合理,建议建三个文件:输入记录顺序文件(stud.rec)、学号顺序文件(studxh.rec)、记录序号和和总成绩顺序的索引文件(studsy.rec)。
3、所有的操作都是围绕着文件进行。
4、按名次查询方法:输入名次到索引文件studsy.rec中找到该名次所对应的记录号根据记录号到文件stud.rec 随机定位查找到所需的记录。
5、成绩报表如下格式:(作为一个txt文件即可)

[知识基础]
1、程序设计基础、编程语言(C语言)。
[实训考核合格标准]
1、 用C编写实现了学生成绩管理系统的最基本功能,70%。
2、 程序实现的优劣(数据结构、算法、效率、界面、操作的实用性和方便性等方面评价),20%。
3、 创新性(自己独到的思想、算法、程序实现方法等),10%。
[参考资料]
1、C语言与程序设计方法。

(制表符└ ─ ┐└ ┼│┴ ┘┘┼├ ┤┴ ┬)


                             学生成绩报表
专业:信息管理与信息系统  班级:2010级1班
┌────┬────┬────┬────┬────┬────┬────┐   
│  学号  │  姓名  │  高数  │  英语  │  马列  │ C 语言 │计技基础│
├────┼────┼────┼────┼────┼────┼────┤
│ 0100111│  张三  │   87   │  67    │  78    │ 98     │  95    │
├────┼────┼────┼────┼────┼────┼────┤
│ 0100112│  李四  │   98   │  88    │  88    │ 99     │100     │
├────┼────┼────┼────┼────┼────┼────┤
│ 0100113│王二麻子│   78   │  77    │  88    │ 77     │  99    │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
└────┴────┴────┴────┴────┴────┴────┘

源码

https://pan.baidu.com/s/1J–MYtUyPilpJKTD15-SgA?pwd=1111

2、航空客运订票系统

[问题描述]
航空客运订票的业务活动包括:查询航线、客票预订和统计功能等。设计一个航空客运售票系统,以使上述业务可以借助计算机来完成。
[基本要求]
1、 根据输出结果分析需要哪些数据,为此决定文件结构。
2、每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行周日(星期几)、乘员定额、余票量、已售票的客户名单(包括姓名、舱位等级)。
3、文件的设计要合理,建议建三个文件:航班文件(flight.rec)、票务文件(ticket.rec)、旅客信息文件( passenger.rec)。
4、所有的操作都是围绕着文件进行。
5、航班售票统计报表如下格式:(作为一个txt文件即可)
6、设计的飞机票以一个txt文件存盘即可。
[知识基础]
1、程序设计基础、编程语言(C语言)。
[实训考核合格标准]
1、 C编写实现了学生成绩管理系统的最基本功能,70%。
2、程序实现的优劣(数据结构、算法、效率、界面、操作的实用性和方便性等方面评价),20%。
3、创新性(自己独到的思想、算法、程序实现方法等),10%。
[参考资料]
1、 C语言与程序设计方法。

航班售票统计报表
航空公司:东方航空公司              日期:2011年6月28日
┌────┬────┬────┬────┬────┬────┬────┐   
│ 航班号 │ 飞机号 │定员人数│售票数  │ 头等舱 │ 普通舱 │ 余票数 │
├────┼────┼────┼────┼────┼────┼────┤
│ 0100111│ C231   │   224  │  198   │  42    │ 156    │  26    │
├────┼────┼────┼────┼────┼────┼────┤
│ 0100112│  D456  │   280  │  260   │  60    │ 200    │  20    │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
└────┴────┴────┴────┴────┴────┴────┘

源码

https://pan.baidu.com/s/1J–MYtUyPilpJKTD15-SgA?pwd=1111

3、企业仓库库存管理信息系统

[问题描述]
设计一个企业仓库库存信息管理系统,实现:原材料的入库、出库管理;原材料库存统计及报表;原材料编码管理等功能。
[要求与建议]
1、根据输出结果分析需要哪些数据,为此决定文件结构。
2、文件的设计要合理,建议建三个文件:原材编码信息文件(m_codel.rec)、原材料库存文件(stocks.rec)、原材料出入库文件(m_in&out.rec)。
3、所有的操作都是围绕着文件进行。
4、 原材料查找方法:按名称查询、按原材料编码查询:出入库查询:按出入编号查询、按日期查询。
5、入库单、出库单原材料年、月统计报表如下格式:(作为一个txt文件即可)

[知识基础]
1、程序设计基础、编程语言(C语言)。
[实训考核合格标准]
1、用C编写实现了企业仓库库存管理信息系统的最基本功能,70%。
2、程序实现的优劣(数据结构、算法、效率、界面、操作的实用性和方便性等方面评价),20%。
3、创新性(自己独到的思想、算法、程序实现方法等),10%。
[参考资料]
1、C语言与程序设计方法。

2、系统主要功能设计

3、报表设计举例
7月原材料领用出库分类统计报表

红心印刷厂                                      统计时间:2011年8月
┌────┬────┬────┬────┬────┬────┬────┬────┐   
│材料编码│  名称  │  规格  │计量单位│单价(元)│ 数 量  │归集产品│用料单位│
├────┼────┼────┼────┼────┼────┼────┬────┤
│  0001  │ 铜板纸 │  11/12 │  张    │  0.5   │  10000 │ 8#画册 │ 三车间 │ 
├────┼────┼────┼────┼────┼────┼────┬────┤
│  0002  │ 彩色墨 │ 0.002m │  千克  │   60   │   8    │  8#画册│三车间  │
├────┼────┼────┼────┼────┼────┼────┬────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │        │
├────┼────┼────┼────┼────┼────┼────┬────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │        │
├────┼────┼────┼────┼────┼────┼────┬────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │        │
└────┴────┴────┴────┴────┴────┴────┬────┘

入库统计报表、年度统计报表,参照上例自行设计。

源码

https://pan.baidu.com/s/1J–MYtUyPilpJKTD15-SgA?pwd=1111

4、图书馆信息系统

[问题描述]
设计一个图书管理信息系统,实现图书采编,图书编目(分类),图书查询以及图书流通(借,还书)等功能。
[要求与建议]
1、根据输出结果分析需要哪些数据,为此决定文件结构。
2、文件的设计要合理,建议建三个文件:图书信息文件(book.rec)、图书借还信息文件(sircula.rec)、记录序号和书号顺序的索引文件(booknum.rec)。
3、所有的操作都是围绕着文件进行。
5、 按书号查询方法:输入书号到索引文件(booknum.rec 中找到该书号所对应的记录号根据记录号到文件book.rec 随机定位查找到所需的记录。
5、借书统计报表如下格式:(作为一个txt文件即可)

[知识基础]
1、程序设计基础、编程语言(C语言)。
[实训考核合格标准]
1、用C编写实现了学生成绩管理系统的最基本功能,70%。
2、程序实现的优劣(数据结构、算法、效率、界面、操作的实用性和方便性等方面评价),20%。
3、创新性(自己独到的思想、算法、程序实现方法等),10%。
[参考资料]
1、C语言与程序设计方法。

借书统计报表

江西财经大学 图书馆                        统计时间:2011年6月
┌────┬────┬────┬────┬────┬────┬────┐   
│图书类别│ 图书名 │ 出版社 │  单价  │借出册次│未规还数│超期册次│
├────┼────┼────┼────┼────┼────┼────┤
│  政经  │ 经济学 │  财政  │  38    │  42    │   21   │   0    │
├────┼────┼────┼────┼────┼────┼────┤
│ 计算机 │ C 语言 │  高教  │  26    │  160   │   48   │  1     │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
└────┴────┴────┴────┴────┴────┴────┘

源码

https://pan.baidu.com/s/1J–MYtUyPilpJKTD15-SgA?pwd=1111

5、人力资源管理信息系统的设计与实现

[问题描述]
设计一个人力资源管理信息系统,实现人员,考勤、工资管理等功能。

[要求与建议]
1、根据输出结果分析需要哪些数据,为此决定文件结构。
2、文件的设计要合理,建议建四个文件:员工信息文件(employee.rec)、员工考勤文件(wordnum.rec)、员工工资文件(wage.rec)、序号和职工号顺序的索引文件(empnum.rec)。
3、所有的操作都是围绕着文件进行。
4、按职工号查询方法:输入职工号到索引文件(empnum.rec 中找到该职工号所对应的记录号根据记录号到文件employee.rec 随机定位查找到所需的记录。
5、员工工资条和工资报表格式如下:(作为一个txt文件即可)

[知识基础]
1、程序设计基础、编程语言(C语言)。
[实训考核合格标准]
1、 C编写实现了学生成绩管理系统的最基本功能,70%。
2、程序实现的优劣(数据结构、算法、效率、界面、操作的实用性和方便性等方面评价),20%。
2、 新性(自己独到的思想、算法、程序实现方法等),10%。
[参考资料]
1、C语言与程序设计方法。

员工工资条
江西机械厂                                 时间:2011年6月15日
┌────┬────┬────┬────┬────┬────┬────┐   
│ 职工号 │  姓名  │  部门  │基本工资│  奖金  │   扣款 │实发工资│
├────┼────┼────┼────┼────┼────┼────┤
│  0001  │  章三  │  技术  │ 1800   │  1000  │   20   │ 2780   │
├────┼────┼────┼────┼────┼────┼────┤
│ 0002   │  李四  │  财务  │  1600  │  800   │   100  │ 2300   │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
└────┴────┴────┴────┴────┴────┴────┘
工资统计报表
江西机械厂                                 时间:2011年6月15日
┌────┬────┬────┬────┬────┬────┬────┐   
│ 部门号 │  部门  │工资总额│奖金总额│平均工资│扣款总额│实发工资│
├────┼────┼────┼────┼────┼────┼────┤
│  1001  │  财务  │  20000 │  8000  │ 2800   │   200  │ 27800  │
├────┼────┼────┼────┼────┼────┼────┤
│  1002  │  生产  │  20000 │  8000  │ 2800   │   200  │ 27800  │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
├────┼────┼────┼────┼────┼────┼────┤
│ …     │  ….   │  ….   │  ….   │  …    │ …     │ …     │
└────┴────┴────┴────┴────┴────┴────┘

源码

https://pan.baidu.com/s/1J–MYtUyPilpJKTD15-SgA?pwd=1111

6、学生通讯录管理系统

[问题描述]
编程实现一个学生通讯录管理系统,学生通讯录的部分数据如下:

学号	姓名	性别	电话	家庭地址
2202204779	宁新平	...	...	...
2202204759	徐晴	...	...	...
2202204764	李祎	...	...	..
...	...	...	...	...

(请提供至少20人的初始数据)
[实验要求]
此系统需完成的功能和各项要求如下:
(1)建立:以链表的存储结构方式建立学生通讯录。
(2)查询:按学生的学号或姓名查找相关学生信息,如果查找成功,则输出查找到的学生信息。
(3)修改:按指定学号的学生电话修改为指定的值。
(4)插入:将指定的新学生信息插入到通讯录链表中。
(5)删除:从通讯录链表中删除指定学号的学生信息。
(6)输出:输出通讯录顺序表中的所有学生信息。

源码

https://pan.baidu.com/s/1J–MYtUyPilpJKTD15-SgA?pwd=1111

7、迷宫通路求解

[问题描述]
用一个M*N的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。迷宫的左上方是入口,右下方有一个出口,如下图所示。编程实现探寻从迷宫入口到出口有无通路,若有,则给出一条从入口到出口的通路;若无,则给出没有通路的结论信息。

入口	1	2	3	4	5	6	7	8	
→	0	0	1	0	0	0	1	0	
2	0	0	1	0	0	0	1	0	
3	0	0	0	0	1	1	0	1	
4	0	1	1	1	0	0	1	0	
5	0	0	0	1	0	0	0	0	
6	0	1	0	0	0	1	0	1	
7	0	1	1	1	1	0	0	1	
8	1	1	0	0	0	1	0	1	出口
9	1	1	0	0	0	0	0	0	→

[实验要求]
(1)实现一个以链表作为存储结构的栈类。
(2)利用栈设计一个求解迷宫的非递归算法。
(3)编写测试程序,求出迷宫的通路,若无通路,则输出没有通路的提示信息;若有通路,则以三元组(i,j,d)的形式输出通路,其中,(i,j)指示迷宫中的一个位置坐标,d表示走到下一坐标的方向(1,2,3,4分别表示东、南、西、北4个方向),例如,针对上图迷宫,输出的通路为(1,1,1),(1,2,2),(2,2,2),(3,2,3)。。。
[实现提示]
(1)计算机求解迷宫通常采用“穷举求解”方法,即从入口出发,顺着某一方向进行探索,若能走通,则继续前进,否则,沿着原路退回,换一个方向继续探索,直至出口位置,从而求得一条通路。加入所有可能的通路都探索到,但未能到达出口,则所设定的迷宫没有通路。
(2)用二维数据存储迷宫数据,通常设定入口点的坐标为(1,1),出口点的坐标为(m, n)。为了处理方便,可在迷宫的四周加一圈障碍。
(3)对于迷宫中的任一位置,在此只约定东、南、西、北探索方向。
(4)栈用来保存走过的路径。

源码

https://pan.baidu.com/s/1J–MYtUyPilpJKTD15-SgA?pwd=1111

8、校园导游系统

[问题描述]
校园导游系统:一个校园有若干景点,如正校门、人工湖、大数据实验室、樱花大道、图书馆、体育场、体育馆和礼堂等。实现一个为来访客人提供信息查询服务的程序,如查询景点的详细信息,查询两个景点的一条最短路径。
[实验要求]
(1) 设计你所在学校的校园平面图,所含景点不少于10个。
(2) 来访客人可以输入任一个景点的名称,查询景点的详细信息。
(3) 来访客人可以输入任何两个景点的名称,查询这两个景点之间的一条最短路径。
[实现提示]
以图中的顶点表示校园内各景点,存放景点代号、名称和简介等信息;以边表示路径,存放路径长度等相关信息,如下图所示。本题可采用邻接矩阵或邻接表实现图的存储结构,利用迪杰斯特拉算法求得最短路径。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值