| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1212 人关注过本帖
标题:请各位高手帮我看看这个程序的结果为什么出不来
只看楼主 加入收藏
starshinei
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2004-8-11
收藏
 问题点数:0 回复次数:2 
请各位高手帮我看看这个程序的结果为什么出不来

#include <iostream.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #define STACK_INIT_SIZE 100 #define STACKINCREMENT 10 #define ERROR 0 #define OK 1 #define OVERFLOW -2 typedef int Status ; typedef int SElemType; typedef struct { SElemType *base; SElemType *top; int stacksize; }Sqstack; Status InitStack(Sqstack &S) {S.base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType)); if(!S.base) exit(OVERFLOW); S.top= S.base; S.stacksize=STACK_INIT_SIZE; return OK; } //Initstack Status GetTop(Sqstack S, SElemType &e) {if(S.base==S.top) return ERROR; e= *(S.top-1); return OK; } //GetTop Status Push(Sqstack &S, SElemType e) {if(S.top-S.base>=S.stacksize) { S.base= (SElemType *)realloc(S.base,(S.stacksize+STACKINCREMENT)*sizeof(SElemType)); if(!S.base) exit(OVERFLOW); S.top=S.base+S.stacksize; S.stacksize+=STACKINCREMENT;} *S.top++=e; return OK; } // Push Status Pop(Sqstack &S,SElemType &e) {if(S.top==S.base)return ERROR; e= *--S.top; return OK; } //POP Status StackEmpty(Sqstack S){ if(S.top==S.top) return OK;else return ERROR; } //StackEmpty void main(){ Sqstack S; SElemType n,e; InitStack(S); cin>>n;cout<<endl; while(n){ Push(S,n%8); n=n/8; } while(!StackEmpty(S)){ Pop(S,e); cout<<e; } }//end

搜索更多相关主题的帖子: 程序 结果 
2004-10-14 16:35
sxw
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2004-10-16
收藏
得分:0 

//因为你出现了一个输入错误

Status StackEmpty(Sqstack S) { if(S.top==S.base) //原句是 (S.top==S.top) return OK; else return ERROR; } //StackEmpty

//这样就可以了,建议你把程序的格式写的更好一些,会方便查错.

2004-10-16 17:02
starshinei
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2004-8-11
收藏
得分:0 
非常感谢
2004-10-18 17:28
快速回复:请各位高手帮我看看这个程序的结果为什么出不来
数据加载中...
 
   



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

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