📄 sub2.cpp
字号:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
typedef int Atom;
struct Element
{
Atom data;
struct Element* link;
};
typedef Element* Lista;
void initlista(Element*& p);
void insfa(Element*& l,Atom a);
void afisare(Element* l);
int caut(Element*& l,int x);
void insert(Element*& l,Atom a,int b);
void eroare(void);
void main()
{
int n,t,poz,nel;
Element *cap,*l;
clrscr();
initlista(cap);
printf("\nIntrodu lista :\n");
scanf("%d",&n);
while(n!=0)
{
insfa(cap,n);
scanf("%d",&n);
}
printf("\nLista este : ");
afisare(cap);
printf("\nIntroduceti elementul cautat : ");
scanf("%d",&t);
if(caut(cap,t))
printf("\nElementul %d se afla in lista!",t);
else
printf("\nElementul %d NU se afla in lista!",t);
printf("\nIntrodu noul element de inserat : ");
scanf("%d",&nel);
printf("\nIntrodu pozitia : ");
scanf("%d",&poz);
insert(cap,nel,poz);
afisare(cap);
getch();
}
void initlista(Element*& l)
{
l=0;
}
void insfa(Element*& l,Atom a)
{
Element *p;
p=new Element;
p->data=a;
p->link=l;
l=p;
}
void afisare(Element* l)
{
Element *p;
p=l;
while(p!=0)
{
printf(" %d ",p->data);
p=p->link;
}
}
int caut(Element*& l,int x)
{
Element *p;
p=l;
while(p!=0)
{
if(p->data==x)
return 1;
p=p->link;
}
return 0;
}
void eroare(void)
{
printf("\n\tEROARE!");
getch();
exit(1);
}
void insert(Element*& l,Atom a,int b)
{
Element *x,*p;
int c=0;
p=l;
if(b==0)
eroare();
else
if(b==1)
insfa(l,a);
else
{
x=new Element;
x->data=a;
p=l;
while(p!=0)
{
c++;
if((b-1)==c)
{
x->link=p->link;
p->link=x;
}
p=p->link;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -