| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 280 人关注过本帖
标题:这个关于栈的算法错在哪?
取消只看楼主 加入收藏
不离不弃
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-10-31
收藏
 问题点数:0 回复次数:0 
这个关于栈的算法错在哪?

#include "Stdio.h"
#include "Conio.h"

typedef struct Node //定义栈
{
int data;
struct Node *next;
}Node,*LKStack;

void inistack(LKStack *s) //初始化栈
{
*s=(Node*)malloc(sizeof(Node));
(*s)->next=NULL;
}

int isEmpty(LKStack s) //判空
{
return s->next==NULL;
}

int push(LKStack s,int e) 入栈
{
Node *r;
r=(Node*)malloc(sizeof(Node));

if(r==NULL) return 0;
r->data=e;
r->next=s->next;
s->next=r;
}

int pop(LKStack s,int *e) //出栈
{
Node *r;
if(isEmpty(s)) return 0;
r=s->next;
s->next=r->next;
*e=r->data;
free(r);
}

int gettop(LKStack s,int *e)//取栈顶元素
{
if(isEmpty(s)) return 0;
*e=s->next->data;
}
void main(void) //把八进制1357转换成十进制数
{
int a=1357;
int b,e;
Node *s;
while(a)
{
b=a%8;
a=a/8;
push(s,b);
}
while(isEmpty(s))
{

pop(s,e);
printf("%d",e);
}
}
不显示结果,是怎么回事啊 ?大虾们谢谢了 !

搜索更多相关主题的帖子: 算法 
2007-11-03 17:11
快速回复:这个关于栈的算法错在哪?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016288 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved