⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 新建 文本文档 (121).txt

📁 数据结构实验报告数据结构实验报告数据结构实验报告数据结构实验报告数据结构实验报告
💻 TXT
字号:
一,实验目的:数制转换
二,实验环境:硬件 四机房微型计算机
              软件 TC3.0
三,实验内容:1.	掌握栈结构,实现栈及栈中的一些常用操作。
              2.掌握利用栈实现数制的转换的方法。
四,实验步骤:先写算法,基本的思想是先,先建一个栈,然后对数每进行%8取余
              把余数入栈,根据栈的特点对,当满时再生新的空间,
              再出栈;
算法和源程序#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#include<malloc.h>
#define ST_IN_SI 5
#define ST_INC 1
typedef struct
{
 int *base;
 int *top;
 int stacksize;
}sqstack;
int Initstack(sqstack *s)
{
s->base=(int *)malloc(ST_IN_SI*sizeof(int));
if(!s->base)return(0);
s->top=s->base;
s->stacksize=ST_IN_SI;
return(1);
}
void push(sqstack *s,int e)
{
if(s->top-s->base>=s->stacksize)
{s->base=(int *)realloc(s->base,(ST_IN_SI+ST_INC)*sizeof(int));
if(s->base)exit(0);
s->top=s->base+s->stacksize;
s->stacksize+=ST_INC;
}
*s->top++=e;
}
int pop(sqstack *s)
{int e;
if(s->top==s->base)exit(0);
e=*--s->top;
return(e);
}
void main()
{
int n;
textbackground(BLUE);
textcolor(RED);
clrscr();
sqstack hu,*h;
h=&hu;
if( Initstack(h))printf("stack is success\n");
printf("INPUT THE DATD\n");
scanf("%d",&n);
while(n)
{
push(h,n%8);
n=n/8;
}
printf("the change number \n");
while(h->top!=h->base)
{printf("%d",pop(h));}
getch();
}
实验结果 stack is success
INPUT THE DATA
100
the change number
144
实验问题 对栈还有不熟悉的地方,以后要好好熟悉栈的机制

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -