电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数据结构课程设计(

数据结构课程设计(_第1页
1/24
数据结构课程设计(_第2页
2/24
数据结构课程设计(_第3页
3/24
数据结构课程设计( 数据构造课程设计 ( 一、设计目的 1.1 问题描述: 任意给定一个 M 进制的数 x,请实现如下要求: 1、对给字一个 M 进制的数据 x,求出此数 x 的 10 进制值(用 MD 表示);2、实现对 x 向任意的一个非 M 进制的数的转换; 1.2 问题分析: 1、用串实现该问题: ⑴m,n,x 是定义的全局变量; ⑵Loop 循环是实现 M 进制数转换为 10 进制; ⑶trans()是实现 10 进制数转换为 n 进制数的函数;(4)voidmain()是主函数,功能是给出测试的数据,并在特定条件下调用 trans() 函数。 2、用栈实现该问题: ⑴SeqStack 定义栈,top 为栈顶指针; ⑵intInitStack(SqStackinti;for(i=0;n>0;i++) {if(n%m0;n--){printf(“%c“,str[n-1]);}} voidmain() {intm,n,x;charch; printf(“geidingjingzhiM---“);scanf(“%d“,loop: printf(“geidingyige%djinzhideshuX---“,m);fflush(stdin);//一个 M 进制的数 X 转 10 进制 for(x=0;;){ch=getchar(); if(ch>=“0“}x=x*m+n;} printf(“zhuanhuacheng10jinzhideshuwei---%d\\n“,x);printf(“geidingyaozhuanhuachengdejinzhiN---“);scanf(“%d“, printf(“zhuanhuacheng%djinzhihoudejieguo---“,m);trans(x,m);printf(“\\n“);} 栈转换: #include#include#defineStack_Size20typedefintElemType;//挨次栈存储类型 typedefstruct {ElemTypeelem[Stack_Size];inttop;}SeqStack; // 初 始 化 : 为 未 初 始 化 的 挨 次 栈 S 设 置 栈 顶 指 针voidInitStack(SeqStack*S) {S->top=-1;printf(“kongzhanS=()\\n“);}//判空栈:推断栈 S是否为空栈 intIsEmpty(SeqStack*S) {if(S->top==-1)return1;elsereturn0;}//判栈满:推断栈 S 是否为满栈 intIsFull(SeqStack*S) {if(S->top==Stack_Size-1)return1;elsereturn0;}//进栈:向 S栈 顶 压 入 一 个 数 据 元 素intPush(SeqStack*S,ElemTypex){if(IsFull(S))return0;S->top++;S->elem[S->top]=x;return1;}// 出栈:弹出 S 的栈顶元素,并用 x 返回 intPop(SeqStack*S,ElemType*x){ if(IsEmpty(S))return0;*x=S->elem[S->top];S->top--;return1;} //销毁栈 S voidClearStack(SeqStack*S) {free(S);printf(“zhanxiaohui\\n“);} voidmain() {charx[20];intMx;intM; intm;intX=0;intt;inti,length; SeqStack*S=(SeqStack*)...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

数据结构课程设计(

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部