📄 sub04.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 + -