求助,这个程序输出结果是对的但没回车还弹出一个框
c语言吧
全部回复
仅看楼主
level 2
改了三小时了,一直不行[泪]
#include<stdio.h>
#include<stdlib.h>
typedef struct N
{
char data;
struct N *next;
}N,*L;
L aaa()
{
N *head,*s;
char c;
head=(N*)malloc(sizeof(N));
head->data=' ';
while(c!='$')
{
c=getchar();
switch(c)
{
case '(':
case '[':
case '{':
{s=(N*)malloc(sizeof(N));
s->data=c;
s->next=head->next;
head->next=s;
}break;
case ')':
if(head->next->data=='(')
{
s=head->next;
head->next=head->next->next;
free(s);
}break;
case ']':
if(head->next->data=='[')
{
s=head->next;
head->next=head->next->next;
free(s);
}break;
case '}':
if(head->next->data=='{')
{
s=head->next;
head->next=head->next->next;
free(s);
}break;
}
}
return(head->next);
}
void outputrest(L A)
{
printf("多出的括号:");
while(A)
{
printf("%c",A->data);
A=A->next;
}
printf("\n");
}
int main()
{
L A;
A=aaa();
outputrest(A);
return 0;
}
2018年10月28日 06点10分 1
1