📄 sub7.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)
{
Element *p,*q;
p=C1.head;
q=C2.head;
if(C1.head==0 && C2.head==0)
return(1);
else
{
if(p->data==q->data)
return(1);
else
return(0);
p=p->link;
q=q->link;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -