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

📄 sub04.cpp

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

struct Element
{
	char *nume;
	char *tel;
	Element *link;
};

void InitLista(Element*& cap);
void Inserare(Element*& cap,char *pn,char *pt);
void Afisare(Element* cap);
double Cautare(Element*& cap,char *s);

void main()
{
	char a[80],b[25];
	Element* cap;
	char *num,*tl,*s;
	clrscr();
	InitLista(cap);
	printf("\n\tIntroduceti agenda :\n");
	printf("\n\tNume : ");
	gets(a);
	while(a[0]!='.')
	{
		num=strdup(a);
		printf("\tTel. : ");
		gets(b);
		tl=strdup(b);
		Inserare(cap,num,tl);
		printf("\n\tNume : ");
		gets(a);
	}
	Afisare(cap);
	printf("\n\n\tNumele cautat :");
	gets(s);
	if(Cautare(cap,s))
		printf("\n\tNumarul persoanei numite '%s' este %.0lf !",s,Cautare(cap,s));
	else
		printf("\n\tPersoana ' %s '  nu figureaza in agenda!",s);
	printf("\n\n\t\t\t     ---- T H E    E N D ----\n");
	getch();
}

void InitLista(Element*& cap)
{
	cap=0;
}

void Inserare(Element*& cap,char *pn,char *pt)
{
	Element *p,*q;
	p=new Element;
	p->nume=pn;
	p->tel=pt;
	if(cap==0 || strcmp(p->nume,cap->nume)<=0)
	{
		p->link=cap;
		cap=p;
	}
	else
	{
		q=cap;
		while(q->link!=0 && strcmp(p->nume,q->link->nume)>0)
			q=q->link;
		p->link=q->link;
		q->link=p;
	}
}

void Afisare(Element* cap)
{
	Element* p;
	clrscr();
	p=cap;
	while(p!=0)
	{
		printf("\n\tNume : %s",p->nume);
		printf(" <--> %s",p->tel);
		p=p->link;
	}
}

double Cautare(Element*& cap,char *s)
{
	Element* p;
	p=cap;
	while(p!=0)
	{
		if(strcmp(p->nume,s)==0)
			return(atof(p->tel));
		p=p->link;
	}
	return(0);
}

⌨️ 快捷键说明

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