C语言数据结构栈的初始化
人气:
【字体:大 中 小】
发布时间:2007-08-19 17:17:46
>>>>>>>>提问#include<stdio.h>
#include<alloc.h>
struct zhan
{
int *top;
int *base;
}*hui;
main()
{
char c[10],c1[10];
int i,j=0;
scanf("%s",c);
hui->base=(char*)malloc(10*sizeof(char));/*在这个地方有错误,但是我怎么也找不出错在哪儿*/
hui->top=hui->base;
for(i=0;i<10;i++)
{
*hui->top=c[i];
hui->top++;
}
for(i=0;i<10;i++)
{
c1[i]=*(hui->top-1);
hui->top--;
}
for(i=0;i<10;i++)
{
if (c[i]!=c1[i])
{
j=1;
}
}
if (j==0)
{
print("THIS IS HUI!");
}
else
{
print("It false!");
}
}
而且我个人认为栈是否也不需要结构,比如只要2个指针变量 *p1 和 *p2
p1=(char*)malloc(sizeof(char)*len);
p2=p1;
/*入栈(e为放入数据)*/
p1=e;
p1++;
/*出栈*/
e=p1-1;
p1--;
不知道这样是否也可以呢,因为没有解决掉上面的malloc函数的问题,所以我也没办法证实这个想法,如果有高手知道,请不惜赐教!
休 闲 居 编辑
>>>>>>>>休闲养生网回答:不知道你写的到底是什么,看不懂!
#define MAXSIZE 60
main()
{
char zhan[MAXSIZE],ch,i;
int top=0;
scanf("%c",&ch);
while(ch!='#')
{zhan[top++]=ch; //入栈
scanf("%c",&ch);}
top--;
while(top>=0)
printf("%c",zhan[top--]); //出栈
getch();
}
以上为顺序表存储!
链式存储
定义 结构体栈元素
struct vertype DNode
{ char data;
DNode *next;}Node;}
自己多想想就知道了,和上面的大同小异。
≡ 查看、发表评论 ≡