欢迎来到文档下载导航网!

C语言实训总结报告模板.doc

时间:2020-10-26|当前位置:首页 > 教育文档 > 高等教育 > |用户下载:

C语言实训总结报告模板.doc

湖北汽车工业学院电气和信息工程学院? ? ? ? 《C语言程序设计》 实训汇报 ? ? 实训题目: 学生信息管理系统 ? ? ?专业: 汽车电子工程专业 班级: 姓名: 成绩: ?? ?一、需求分析 1、问题 依据需求,该系统所应包含信息有以下部分: 学生基础信息: 学号,班级,姓名,年纪,出生日期。 依据需求,该系统所应实现功效有以下部分: 多种基础信息数据录入:a由键盘输入学号,班级等基础信息。B由文件录入学生信息。 对学生信息查询:a按学号查询指定学生信息。b按班级查询指定班级内学生信息。 学生基础信息数据删除:按学生学号来删除指定学号学生信息。 学生基础信息保留:将录入学生信息保留到文件中。 2、系统采取C语言实现,开发环境为VC,能够运行在操作系统windows98及以上皆可。 3、运行要求能连续录入任意个数学生基础信息。界面简练,操作方便,提醒人性化,比如删除前需要提醒用户是否删除容错性强,比如输入学生出生日期格式不对或日期不符合时提醒输入错误,并可重新输入。二、总体设计 1、系统步骤设计 依据系统要求,设计以下系统步骤 + 2、系统模块设计 依据系统功效设计,以下模块 主界面模块:完成系统菜单显示 功效选择模块:依据用户选择,完成其对应功效 键盘输入学生信息:从键盘输入任意个数学生基础信息,并保留到结构体链表中。 文件录入学生信息:从指定文件中录入学生基础信息,并保留到结构体链表中。 按学号查学生信息:输入要查找学生学号,可查询并显示该学号对应学生基础信息。 按班级查学生信息:输入要查找班级,可查询并显示该班级内学生基础信息。 删除指定学号信息:输入要删除学生学号,可找到并显示该学号对应学生信息并删除其信息。 保留学生信息:可将已录入学生信息保留到指定文件中。 三、具体设计 1、数据结构设计 依据系统要求,系统中需要保留数据有通讯录信息,其结构以下: 数据项 数据项名称 数据类型 数据长度 备注 学号 xh_number 整形变量 2 班级 bj_number 整形变量 2 姓名 name 字符串变量 20 年纪 nl_number 整形变量 2 指向日期结构体指针 born_day*q 指向日期结构体类型指针变量 应题目要求另加一个存放日期结构体: 数据项 数据项名称 数据类型 数据长度 备注 年份 y 整形变量 2 月份 m 整形变量 2 号 d 整形变量 2 为了能实现可连续输入任意个数学生信息,我采取链表结构保留学生基础信息,在增加学生基础信息时,创建一个学生信息节点,将其插入到链表中,示意图以下。 使用C语言创建结构体以下: struct student {int xh_number; 学号int bj_number; 班级char name[20]; 姓名int nl_number; 年纪struct born_day*q; 指向日期结构体类型指针struct student *next; 指向学生信息结构体类型指针 }; 2、界面设计 主界面: 依据系统要求,设计一个字符界面,显示系统菜单,为了表现友好性,将在每个菜单前显示该菜单项对应数字 用户输入菜单项前面数字,主菜单消失,进入该模块对应界面,进行对应操作,完成后,回到主界面。 输入界面:a经过键盘输入录入学生信息: 依据提醒语句可连续输入多个学生学生信息 b经过文件录入学生信息: 查询界面: a按学号查询: b按班级查询: 删除界面: 输入要删除学生学号,确定删除收即可删除. 导出界面: 3、模块实现 主界面实现:调用printf()函数,在屏幕上打印需要显示字符信息,需要在显示之前调用system(“cls”)函数将前面界面清空。 对应实现函数ml(); 功效选择模块实现: 接收从键盘输入菜单选择,判定并调用对应功效函数,完成其对应功效。实现功效选择。 对应语句:switch(); 学生信息录入模块实现: 模块说明:从键盘接收输入学生信息,在动态存放区中创建学生信息节点,遍历链表,将其插入到学生信息链表最终位置。 模块步骤: 对应函数:struct student *creat() 学生信息导入模块实现: 模块说明:进入功效后先对屏幕清屏,再从键盘输入要导入文件名,及要录入学生个数。依据学生个数创建含有对应个学生信息结构体链表。判定打开文件是否成功,从文件中依次将学生信息录入到链表中对应结构体内,录入完成后,判定文件是否关闭成功,模块结束。 模块步骤:对应函数:struct student *duru() 学生信息按学号和按班级查询模块实现: 模块说明:先清屏,然后输入要查询学生学号或班级,建立一个指针从学生信息链表首地址看是逐一判定其结构体内学生学号或班级是否相等,假如相等就显示并跳出循环。假如循环到最终全部没有相等就显示没有此学号或班级学生信息,并结束功效。 模块步骤 对应函数:xhcx(struct student *p)和bjcx(struct student *p) 学生信息删除模块实现: 模块说明:先清屏,然后输入要删除学生学号,循环判定链表中结构体是否为要删除学生信息结构体,假如是就提醒是否删除,若要删除就将此结构体前一个和后一个结构体连接起来,然后对出功效。 模块步骤: 对应函数:delete(struct phone * head) 通讯录信息导出模块实现:模块说明:先清屏,然后打开一个文件,而且令文件指针指向此文件,进行循环依次将结构体里信息输入到文件中,最终关闭文件,并对出功效。 模块步骤: 对应函数:save(struct student *p) 四、测试结果 1、输入学生信息测试测试数据: 输入 001 1 王天祺 19 1992-03-05测试结果: 程序运行出现错误原因 sanf()中没有加取址符&。 经过修改再次输入数据 运行成功,结果: 2、从文件录入测试 已知有一文件: 又将此文件内信息录入到系统中 测试结果: 3、查询学生信息测试测试数据:在系统中存在一个学号为001学生。测试成功,结果:此为按学号查询 此为按班级查询 4、删除测试测试数据:已经有三个数据:001 1 wtq 19 1992-03-05 002 2 zdy 19 1991-02-19 003 1 sdf 20 1992-01-12 删除学号为2学生信息 测试结果:5保留学生信息测试: 测试数据:将测试4中删除后学生信息保留起来: 测试结果: 此为保留文件内容。 五、实训总结 实训感想 对系统开发总结(设计亮点,存在不足,需要改善地方)本学生信息管理系统程序编辑整体思绪并不复杂,关键就是经过建立由储存有学生基础信息结构体组成链表和对链表部分技术利用,来达成 1.多种基础信息数据录入如:a由键盘输入学号,班级等基础信息。b由文件录入学生信息。 2.对学生信息查询:a按学号查询指定学生信息。b按班级查询指定班级内学生信息。 3.学生基础信息数据删除:按学生学号来删除指定学号

上一篇:第10章食品安全检测技术.ppt

栏    目:高等教育

下一篇:深圳大学《信号与系统》期末试卷a卷与答案评分标准.docx

本文标题:C语言实训总结报告模板.doc

本文地址:https://www.365weibook.com/html/20201026/210274.html

    正常预览或下载提示:

    本页面文档预览是由服务器自动提取的部分内容,并不是文档乱码。如您需要预览全文或下载文档,请点击页面左侧(点击去预览文档全文或下载文档)按钮,进行全文预览或下载。

推荐下载

联系我们 | 广告投放 |网站地图

免责申明:本网站不提供任何形式的下载服务,因此与之有关的知识产权纠纷本网站不承担任何责任。

如果侵犯了您的权利,请与我们联系,我们将进行删除处理。