第一范文网 - 专业文章范例文档资料分享平台

数据结构实习报告12345

来源:用户分享 时间:2025/5/25 17:53:34 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

printf(\请输入表达式,如:45+36#,必须以#号结尾!\\n\ A[i]=getchar(); while(A[i++]!='#') { A[i]=getchar(); } A[i]='\\0'; infix_exp_value(A,B); printf(\ printf(\ printf(\上式的结果为: \ printf(\ return 0; getch(); }

2.4 测试结果:

1)输入11+(9-3)*(8/2)#

2)输入3+(1/8)*(16-7)#

3 学生成绩查询系统

按学号排序后对学号进行折半查找。 随机输入以学号为关键字的学生信息并构建二叉排序树,对学号进行二叉排序树查找。

3.1设计思路

这个程序主要是实现按学号对8名学生的信息进行查找,其中查找方式分为三种:顺序查找、折半查找、二叉排序树查找。由于顺序查找、折半查找很容易实现,而二叉排序树查找需要构建二叉排序树,再进行二叉排序树查找,所以在这一步骤上有点难度。

16

学生信息包括序号、姓名、成绩,其中学号和姓名都是由字符实现,成绩由整形实现。在输入学生信息时直接按学号顺序输入,这样便省去了在程序中对学生的学号从新进行排序,在二叉排序树的查找过程中,只能查找那些参与构建二叉排序树的学号,二叉排序树是以第一个输入的学生学号为根结点构造二叉排序树的。

3.2系统流程图:

3.3 程序:

#include \#include #include #include typedef struct { char sno[11]; //学号 char name[16]; //姓名 int score; //成绩 }student;

typedef struct BinSTreeNode { char hao[11]; char ming[16]; int fen; struct BinSTreeNode *lchild; struct BinSTreeNode *rchild; }*BTree;

int shun_search(student stu[],int n,char x[]) { int i,j;

17

for(i=0;i

int zhe_search(student stu[],int n,char x[]) { int low,mid,high; low=0;high=n-1; while(low<=high) { mid=(low+high)/2; if(strcmp(stu[mid].sno,x)==0) { printf(\所查找的学生信息如下:\\n 学号\\t 姓名\\t成绩\\n\ printf(\ return 0; } else if(strcmp(stu[mid].sno,x)>0) high=mid-1; else low=mid+1; } return 0; }

void BSTree(BTree *t,student k) { BTree r; if(*t==NULL) { r=(BTree)malloc(sizeof(struct BinSTreeNode)); strcpy(r->hao,k.sno); strcpy(r->ming,k.name); r->fen=k.score; r->lchild=r->rchild=NULL; *t=r; return; } else if(strcmp(k.sno,((*t)->ming))<=0) BSTree(&((*t)->lchild),k); else BSTree(&((*t)->rchild),k); }

18

BTree BSTreeSearch(BTree t,char x[]) { if(t==NULL) return NULL; if(strcmp(t->hao,x)==0) return t; if(strcmp(t->hao,x)>=0) return BSTreeSearch(t->lchild,x); else return BSTreeSearch(t->rchild,x); }

main() { student stu[40]; int i,j,k,n,b; char x[12]; printf(\学生成绩查询系统\\n\\n\ printf(\请输入本次统计的学生数:\ scanf(\ printf(\请输入这些学生的信息:\\n\ printf(\学号\\t姓名 成绩\\n\ for(i=0;i

19

搜索更多关于: 数据结构实习报告12345 的文档
数据结构实习报告12345.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c17yv739hc06i8ss1cmsx_5.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top