| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 518 人关注过本帖
标题:大神们,求解?运行不出来啊!
只看楼主 加入收藏
czwx
Rank: 1
等 级:新手上路
帖 子:6
专家分:3
注 册:2015-10-4
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
大神们,求解?运行不出来啊!
程序代码:
#include<stdio.h>
#define MAXSIZE 40
struct SStack
{int data[MAXSIZE];
int top;
};
void InitSStack(struct SStack *S)
{
S->top=-1;
}
int PushSStack(struct SStack *S,int x)
{if(S->top==MAXSIZE-1)
{printf("栈满,不能进栈");
return 0;}
else
{S->top++;
S->data[S->top]=x;
return 1;
}
}
int PopSStack(struct SStack*S)
{int x;if(S->top==-1)
{printf("栈空,不能出栈");
return 0;}
else
{x=S->data[S->top];
S->top--;
return x;}
}
void F(int a,struct SStack *S)
{int b;
do
{b=a%8;
PushSStack(S,b);
a=a/8;}while(a);
}
void main()
{int a;struct SStack S;
printf("请输入一个十进制数");
scanf("%d",&a);
F(a,&S);
while(S.top!=0)
printf("%d",PopSStack(&S));
}
2015-10-17 12:58
柳逸尘
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:80
专家分:131
注 册:2015-8-10
收藏
得分:5 
要求是什么,功能是什么,有题目吗
2015-10-17 13:36
ACTG
Rank: 2
等 级:论坛游民
帖 子:5
专家分:10
注 册:2015-10-15
收藏
得分:5 
你只定义了一个struct SStack S 变量,直接传进去,你输入的十进制数还在循环取余,只能存一个,要是取了很多了,你往哪入栈? 不就直接崩溃了?
2015-10-17 14:44
MYTHVERDICT
Rank: 2
等 级:论坛游民
帖 子:4
专家分:20
注 册:2015-10-17
收藏
得分:10 
结构体变量S没有进行初始化,也就是你的initial函数没有执行,就开始去对该变量进行操作了。
2015-10-17 18:29
快速回复:大神们,求解?运行不出来啊!
数据加载中...
 
   



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

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