⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sub7.cpp

📁 STRUCTURI DE DATE SI ALGORITMI
💻 CPP
字号:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<math.h>

#define DIMMAX 1000

typedef int Atom;

struct Element
{
	Atom data;
	Element* link;
};

struct Coada
{
	Element *head;
	Element *tail;
};

typedef Coada C;

void init(Coada& C);
int isEmpty(Coada& C);
void put(Coada& C,Atom a);
void get(Coada& C);
Atom front(Coada& C);
void eroare(char s[]);
void display(Coada C);
void clear(Coada& C);
int areEqual(Coada& C1,Coada& C2);

void main()
{
	int n,c,i;
	char s[50];
	Coada C1,C2;
	clrscr();
	init(C1);
	init(C2);
	for(i=1;i<=10;i++)
	{
		printf("\nIntroduceti numarul %d : ",i);
		scanf("%d",&n);
		if(n>0)
			put(C1,n);
		else
			if(n<0)
				put(C2,abs(n));
			else
			{
				get(C1);
				get(C2);
			}
		printf("C1 :");
		display(C1);
		printf("\nC2 :");
		display(C2);
		if(areEqual(C1,C2)==1)
			printf("\n\tCozile sunt egale!");
	}
	clear(C1);
	clear(C2);
	printf("\nC1 :");
	display(C1);
	printf("\nC2 :");
	display(C2);
	getch();
}

void init(Coada& C)
{
	C.head=0;
}

int isEmpty(Coada& C)
{
	return(C.head==0);
}

void put(Coada& C,Atom a)
{
	Element* p;
	p=new Element;
	p->data=a;
	p->link=0;
	if(C.head==0)
	{
		C.head=p;
		C.tail=p;
	}
	else
	{
		C.tail->link=p;
		C.tail=p;
	}
}

void get(Coada& C)
{
	Element *p;
	if(C.head==0)
		eroare("Stergere in coada vida!");
	else
	{
		p=C.head;
		C.head=C.head->link;
		delete(p);
	}
}

Atom front(Coada& C)
{
	if(C.head==0)
		printf("Coada vida!");
	else
		return(C.head->data);
}

void eroare(char s[])
{
	printf("\n\tEROARE!  %s",s);
	getch();
	exit(1);
}

void display(Coada C)
{
	Element *p;
	p=C.head;
	if(C.head==0)
		printf("Coada vida!");
	else
		while(p!=0)
		{
			printf(" %d",p->data);
			p=p->link;
		}
}

void clear(Coada& C)
{
	C.head=0;
}

int areEqual(Coada& C1,Coada& C2)
{
	int i=0;
	Element *p,*q;
	p=C1.head;
	q=C2.head;
	if(C1.head==0 && C2.head==0)
		return(1);
	else
		while(p!=0 && q!=0)
		{
			if(p->data==q->data)
				i=1;
			else
				i=0;
			p=p->link;
			q=q->link;
		}
	if(p==0 && q==0 && i==1)
		return(1);
	else
		return(0);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -