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

📄 sub8.cpp

📁 STRUCTURI DE DATE SI ALGORITMI
💻 CPP
字号:
#include<stdio.h>
#include<conio.h>           //Se prelucreaza impreuma cu "glista.h"
#include<stdlib.h>	    //          si "glista.cpp"
#include<ctype.h>
#include"glista.cpp"

void afis(GLista L);
int NrAtomi(GLista L);
Atom min(Glista L);
int areEqual(Glista L1,Glista L2);

void main()
{
Glista L1,L2;
clrscr();
printf("\nIntroduceti lista :\n");
L1=creareGLista();
printf("\nAtomii :");
afis(L1);
printf("\nNumarul de atomi este %d ",NrAtomi(L1));
printf("\nMinimul este %c",min(L1));
printf("\nIntroduceti a doua lista :\n");
L2=creareGLista();
if(areEqual(L1,L2)==1)
	printf("\nListele sunt EGALE!");
else
	printf("\nListele NU sunt EGALE!");
getch();
}

void afis(GLista L)
{
Gelement *p;
p=L;
while(p!=0)
	{
	if(p->tag==ATOM)
		printf("  %c",p->data.L);
	else
		afis(p->data.L);
	p=p->link;
	}
}

int nr=0;


int NrAtomi(GLista L)
{
GElement *p;
p=L;
while(p!=0)
	{
	if(p->tag==ATOM)
		nr++;
	else
		NrAtomi(p->data.L);
	p=p->link;
	}
return(nr);
}

Atom min(GLista L)
{
Atom m='z',ind;
GElement *p;
p=L;
while(p!=0)
	{
	if(p->tag==ATOM)
		{
		if(p->data.A<m)
			{
			ind=m;
			m=p->data.A;
			p->data.A=ind;
			}
		}
	else
		min(p->data.L);
	p=p->link;
	}
return(m);
}

int areEqual(GLista L1,GLista L2)
{
int eq;
GElement *p,*q;
p=L1;
q=L2;
while(p!=0 && q!=0)
	{
	if(p->tag==ATOM &&q->tag==ATOM)
		{
		eq=0;
		if(p->data.A==q->data.A)
			{
			eq=1;
			p=p->link;
			}
		else eq=0;
		}
	else
		if(p->tag==ATOM ||q->tag==ATOM)
			return(0);
		else

			areEqual(p->data.L,q->data.L);
	q=q->link;
	p=p->link;
	}
return(eq);
}

⌨️ 快捷键说明

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