Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

哪位大侠帮帮忙啊!为什么总是Presentation Error?

Posted by noodle at 2006-07-15 17:47:08 on Problem 1028
#include<stdio.h>
#include<string.h>
#include<malloc.h>

struct url
{
	char site[70];
	struct url *next;
};

typedef struct url url;

url *pipe=NULL;//用以在被调函数和调用函数之间传递数据的全局变量;

url *Push(url *unit,url *stack)
{
	if(stack==NULL)
	{
		stack=unit;
		unit->next=NULL;
		return stack;
	}
	else
	{
		unit->next=stack;
		stack=unit;
		return stack;
	}
}

url *Pop(url *stack)
{
	url *unit;

	if(stack==NULL)
		return NULL;
	else
	{
		unit=stack;
		stack=stack->next;
		pipe=stack;
		return unit;
	}
}

int IsEmpty(url *stack)
{
	if(stack==NULL)
		return 0;
	else
		return 1;
}

void main()
{
	url *ForwardStack=NULL,*BackStack=NULL,*unit,*unit1;
	char command[8],website[]={"http://www.acm.org/"};
	int i;

	unit=(url*)malloc(sizeof(url));
	for(i=0;i<20;i++)
		unit->site[i]=website[i];

	scanf("%s",command);
	while(1)
	{
		if(strcmp(command,"BACK")==0)
		{
			if(IsEmpty(BackStack)==0)
				printf("Ignored");
			else
			{
				ForwardStack=Push(unit,ForwardStack);
				unit=Pop(BackStack);
				BackStack=pipe;
				puts(unit->site);
			
			}
		}

		if(strcmp(command,"FORWARD")==0)
		{
			if(IsEmpty(ForwardStack)==0)
				printf("Ignored");
			else
			{
				BackStack=Push(unit,BackStack);
				unit=Pop(ForwardStack);
				ForwardStack=pipe;
				puts(unit->site);
				
			}
		}
		
		if(strcmp(command,"VISIT")==0)
		{
			BackStack=Push(unit,BackStack);

			unit=(url*)malloc(sizeof(url));
			unit->next=NULL;
			scanf("%s",unit->site);
			puts(unit->site);
			

			while(ForwardStack!=NULL)
			{
				unit1=ForwardStack;
				ForwardStack=ForwardStack->next;
				free(unit1);
			}
		}

		if(strcmp(command,"QUIT")==0)
			exit(0);

		printf("\n");
		for(i=0;i<8;i++)
			command[i]='\0';
		scanf("%s",command);
	}

}

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator