| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
大量收QQ微信精准粉/交友粉,非诚勿扰千里之行 始于足下
共有 172 人关注过本帖
标题:没有我想要的输出 这是个括号配对问题 只涉及()【】
只看楼主 加入收藏
haidiyu
Rank: 1
等 级:新手上路
帖 子:4
专家分:5
注 册:2018-9-23
结帖率:0
  已结贴   问题点数:20  回复次数:1   
没有我想要的输出 这是个括号配对问题 只涉及()【】
#include "顺序栈的相关操作函数.cpp"
int GetString(char a[])
{
    int i,n;
    printf("请输入n的数值:");
    scanf("%d",&n);
    printf("请输入n个为()或者[]的字符:");
    for(i=0;i<n;i++)
    {
        scanf("%c",&a[i]);
    }
    return n;
}

int main()
{
    SqStack *s;
    SqStack Selem;
    s=&Selem;
InitStack(s);
    SElemType e;
    int i,n;
    char a[100];
    n=GetString(a);
    for(i=0;i<n;i++)
    {
        if(a[i]=='('||a[i]=='[')
            Push(s,a[i]);
        else if((s->top==s->base)&&(a[i]==')'||a[i]==']'))
            return Error;
        else if((s->top!=s->base)&&(a[i]==')'||a[i]==']'))
        {
            if(a[i]-*(s->top-1)==1||a[i]-*(s->top-1)==2)
                Pop(s,&e);
            else
                return Error;
        }
    }
printf("%d  %d",s->base,s->top);
    if(s->top==s->base)
        printf("YES");
    else
        printf("NO");
    return 0;
}
2018-10-13 16:14
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:137
帖 子:1507
专家分:7641
注 册:2014-5-19
  得分:20 
include的文件好像只能是.h, 如果你是.cpp文件,好像是extern什么的关键字,具体记不清了。
2018-10-13 23:09







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

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