#include
#include
#include
#include
typedef struct
{
char name[10];
int num;
int sc;
}datatype;
typedef struct lnode
{
datatype data;
struct lnode *next;
}node;
struct linknode* create(int n)
{
node *head=NULL,*p,*q;
int i;
head=(node*)malloc(sizeof(node));
head->next=NULL;
p=head;
for(int i=0;i
q=(node*)malloc(sizeof(node));
printf("input :\n");
scanf("%s %d %d",&(q->data.name),&(q->data.num),&(q->data.sc));
q->next=NULL;
p->next=q;
p=p->next;
}
return head;
};
void disp(node *L)
{
node *p=L->next;
while(p!=NULL)
{
printf("%s %d %d\n",p->data.name,p->data.num,p->data.sc);
p=p->next;
}
}
int length(node *L)
{
int n=0;
node *p=L->next;
while(p!=NULL)
{
n++;
p=p->next;
}
return n;
}
int locate(node *L,int e)
{
int i=1;
node *p=L->next;
while(p!=NULL)
{
if(p->data.num==e)
return i;
i++;
p=p->next;
}
return -1;
}
bool insert(node* L,int i)
{
int j=1;
node *p=L,*s;
if(i<=0)
{
return false;
}
while(j {
j++;
p=p->next;
}
if(p==NULL)
{
return false;
}
else{
s=(node*)malloc(sizeof(node));
printf("输入插入的数据:\n");
scanf("%s %d %d",&s->data.name,&s->data.num,&s->data.sc);
s->next=p->next;
p->next=s;
return true;
}
}
int main()
{
int n;
printf("多少个数据?\n");
scanf("%d",&n);
node *p=create(n);
insert(p,3);
disp(p);
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)