| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1492 人关注过本帖
标题:程序运行出错,求帮助。
只看楼主 加入收藏
漓奈
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2016-5-11
结帖率:0
收藏
已结贴  问题点数:20 回复次数:6 
程序运行出错,求帮助。
#include <stdio.h>
#include <stdafx.h>
#include <malloc.h>
#define max 10
typedef char ElemType;
typedef struct
{
    ElemType data[max];
    int top;                    //栈顶指针
} SqStack;
void InitStack(SqStack *&s)        //初始化栈S
{    s=(SqStack *)malloc(sizeof(SqStack));
    s->top=-1;                    //栈顶指针置为-1
}
void DestroyStack(SqStack *&s)    //销毁栈s
{
    free(s);
}
bool StackEmpty(SqStack *s)        //判断栈空
{
    return(s->top==-1);
}
bool Push(SqStack *&s,ElemType e)    //进栈
{    if (s->top==max-1)    //栈满的情况,即栈上溢出
        return false;
    s->top++;                //栈顶指针增1
    s->data[s->top]=e;        //元素e放在栈顶指针处
    return true;
}
bool Pop(SqStack *&s,ElemType &e)    //出栈
{    if (s->top==-1)        //栈为空的情况,即栈下溢出
        return false;
    e=s->data[s->top];    //取栈顶指针元素的元素
    s->top--;            //栈顶指针减1
    return true;
}
bool GetTop(SqStack *s,ElemType &e)        //取栈顶元素
{    if (s->top==-1)        //栈为空的情况,即栈下溢出
        return false;
    e=s->data[s->top];    //取栈顶指针元素的元素
    return true;
}

void main(){
    SqStack *s;
    int i;
    int j=0;
    char b[max];
    char e;
    int k=true;

    InitStack(s);

    for(i=0;i<max;i++){
        scanf("%c",b[i]);
    }

    while(j<max&&k){
        if(b[j]=='('){
            Push(s,b[j]);
        }
        else if(b[j]==')'){
            if(GetTop(s,e)){
                if(e!='(')
                    k=false;
                else if(e=='(')
                    Pop(s,b[j]);
            }
        }
        i++;
    }
    if(!StackEmpty(s))
        printf("不匹配");
    else
        printf("匹配");
}
搜索更多相关主题的帖子: include return 
2016-05-14 16:51
漓奈
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2016-5-11
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
2016-05-14 16:59
脚快跑
Rank: 2
等 级:论坛游民
帖 子:3
专家分:25
注 册:2016-5-14
收藏
得分:5 

    for(i=0;i<max;i++){
        scanf("%c",b[i]);
    }

scanf("%c", &b[i]);

少了&
2016-05-14 17:37
alice_usnet
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:18
帖 子:370
专家分:2020
注 册:2016-3-7
收藏
得分:5 
SqStack *&s?? excuse me?

未佩好剑,转身便已是江湖
2016-05-14 19:08
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10566
专家分:43004
注 册:2014-5-20
收藏
得分:5 
while(j<max&&k){
        ... ...
        i++; ??
    }
2016-05-14 21:49
qq2330736684
Rank: 1
等 级:新手上路
帖 子:2
专家分:5
注 册:2016-5-14
收藏
得分:5 
*--‘’、、sjjd

】、
2016-05-14 22:14
漓奈
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2016-5-11
收藏
得分:0 
回复 5楼 吹水佬
图片附件: 游客没有浏览图片的权限,请 登录注册
改了还是不行
2016-05-15 14:08
快速回复:程序运行出错,求帮助。
数据加载中...
 
   



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

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