收藏 分销(赏)

数据结构实训报告学生样本.doc

上传人:快乐****生活 文档编号:2556815 上传时间:2024-05-31 格式:DOC 页数:6 大小:291.04KB 下载积分:6 金币
下载 相关 举报
数据结构实训报告学生样本.doc_第1页
第1页 / 共6页
数据结构实训报告学生样本.doc_第2页
第2页 / 共6页


点击查看更多>>
资源描述
吉林工业职业技术学院 ( 数据结构实训报告 ) ( 2011~ 2012 学年第1 学期) 实训地点: 网站建设实训室 指导教师: 张君楠、刘文宏 专业班级: 信管 3101 学生姓名: 王福玺( 0 3 ) 2011年12月16日 目 录 实训项目 2 实训目的 2 设计分析 2 设计方案 3 详细设计 5 使用说明 7 运行调试 8 实训心得 8 参考文献 8 数据结构实训报告 实训项目 1。 个人项目:二分法查找演示 问题描述: 用箭头表示指针,模拟出二分法查找的指针变化过程。 要求: 给定一组数据。可以动态地显示二分法查找的过程.用到函数:setcolor(WHITE)-画颜色;line(x1,y1,x2,y2)-画直线;bar(x1,y1,x2,y2)-画矩形;settextstyle(0,0,2)-字体大小;outtextxy(x,y,变量或常量)-输出内容;initgraph(&gd,&gm,"c:\\tc") -tc所在目录的路径;setfillstyle(SOLID_FILL,0)-每次演示的时候先将下面显示的文字给去处掉,等等。 2。 小组项目:通讯录管理系统 问题描述:建立一个本班学生通讯录文件,包括学号(num)、姓名(name)、性别(sex)、电话(phone)、电子邮箱(email)、住址(addr)。 要求:编写菜单程序,功能包括:建立通讯录、插入记录,删除记录、修改记录、按照学号或姓名查询记录、显示记录、保存文件.定义班级学生结构体名称为student.学号(num)、姓名(name)、性别(sex)、电话(phone)、电子邮箱(email)、住址(addr)均为字符型数组,长度分别为2、8、2、11、20、20。 实训目的 通过本次实训,能够进一步巩固、掌握程序设计基础和数据结构课程的基本知识、基本技能。运用算法分析与程序设计的一般方法进行实际项目的开发.本项目需要具备熟练的数组和线性表知识,具备程序编写、调试的基本能力,具有一定的文字表达和报告撰写能力,具备办公软件使用能力.……。。 设计分析 1. 个人项目:二分法查找演示 用户在键盘上输入的是中缀表达式时,即两个操作数和中间一个运算符,如:3*(2+6)/4.计算时遵循“从左向右计算,先乘除后加减,先括号内后括号外”规则。因此中缀表达式的计算需要考虑括号、运算符优先级等因素,比较麻烦。为此先将中缀表达式转换为后缀表达式再进行运算,因为后缀表达式已经考虑了运算符优先级,消除了括号,运算时只需要处理操作数和运算符即可。 2. 小组项目:通讯录管理系统 设计方案 1。 个人项目:表达式求值 把问题分成两个部分:一是将中缀表达式转换为后缀表达式的算法;二是对后缀表达式求值的算法. 实现第一个算法思想:设置两个栈分别表示操作数栈和运算符栈,分别存放表达式中的操作数和运算符。设“\0”为表达式的结束符。算法的基本思想是: (1) 两个栈初始化为空; (2) 从左到右扫描表达式,遇到操作数一律进操作数栈。以“\0”为表达式的结束标志; (3) 遇到运算符,则判断其优先级是否大于运算符栈栈顶元素的优先级。若大于则进栈,否则栈顶元素出栈并输出到操作数栈; (4) 遇到左括号则左括号进运算符栈。若遇到右括号则出栈并输出到操作数栈,一直遇到左括号为止; (5) 重复(2)(3)(4),直到整个表达式扫描结束,并且运算符栈为空. 如表达式:3*(2+6)/4\0 实现第二个算法思想: (1) 设置一个空栈stack; (2) 从左到右扫描后缀表达式; (3) 遇到操作数压入stack栈中; (4) 遇到运算符,则执行两次出栈操作,对出栈的两个操作数按照指定的运算符进行运算,结果进stack栈; (5) 重复(2)(3)(4),直到整个表达式扫描结束。此时栈顶元素就是最后结果。 数据结构定义: #define MAXSIZE 100 struct{char data[MAXSIZE];//中缀表达式转换为后缀表达式用到的运算符栈 int top;}op; struct{float data[MAXSIZE];//定义后缀表达式求值用到的栈 int top;}op; 2。 小组项目:学生成绩管理 (1)建立一个明了的管理菜单。 (2)使操作人员很容易的完成对学生成绩的查询,修改和添加。 (3)对要查询的数据要有准确性。 数据结构定义: 定义主函数main( );在main( )里定义变量,使用do-while设计程序的容错性,定义被调函数fun1、fun2、fun3、fun4、fun5、fun6和fun7判断所要进行的操作. if(choose==1||choose==2||choose==3||choose==4||choose==5 ||choose==6||choose==7||choose==8||choose==0) switch(choose) { case 1:fun1(); break;// 添加 case 2:fun2(); break;// 计算个人总分、平均分,班级总分、平均分 case 3:fun3(); break; //排序 case 4:fun4(); break; //查询 case 5:fun5(); break; //修改 case 6:fun6();break; //删除 case 7:fun7();break; //插入 } 详细设计 1. 个人项目:表达式求值 源程序代码如下: include〈stdio.h> #define MaxSize 100 void trans(char str[],char exp[]) {struct {char data[MaxSize]; int top; }op; char ch; int i=0,t=0; op.top=-1; ch=str[i]; i++; while(ch!='\0’) {switch(ch) {case’(’: op。top++;op。data[op.top]=ch; break; case’)': …… 2. 小组项目:学生成绩管理 使用说明 1。 个人项目:表达式求值 本程序在turboc 2.0环境下运行通过。运行后,根据提示输入数据即可.可以输入由运算符+、-、*、/、()所构成的算术表达式。表达式输入结束时按回车键。在屏幕上输出后缀表达式,并输出计算结果. 2. 小组项目:学生成绩管理 运行调试 1. 个人项目:表达式求值 运行可执行文件00.exe或在turboc2。0下同时按住ctrl+F9运行00。c文件即可。 运行实例如下: 测试数据一: 图1 不等式 测试数据二: 2。 小组项目:学生成绩管理 实训心得 参考文献 [1] 闵敏. 数据结构. 高等教育出版社。2007。7 [2] 严蔚敏。 数据结构-C语言. 清华大学出版社 [3] 杨秀金. 数据结构。 西安电子科技大学出版社 [4] 李春葆. 数据结构习题与解析. 清华大学出版社 [5] 谭浩强。 C程序设计。 清华大学出版 [6] http://www.baidu。com 教师评语: 成绩评定 注:教师评定内容 1. 实践操作技能 2. 实训报告质量 3. 实训期间表现
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服