江湖救急........初学者问题...
#include <stdio.h>
#include <stdlib.h>
typedef struct lnode //链表定义...
{
int data ; //数据域..
struct londe *next ; //指针域..
} lnode , *linklist ; // ...
int initlink(linklist *l,int k) //新键链表..l为接收链表 ,,k为想插入数的个数..
{
lnode a; //...
int i,u,mun;
(*l)=(linklist )malloc(sizeof(lnode)); //开空间....
if(*l==NULL)
return 0;
(*l)-> next=NULL; // 链表为空....
for(i=0;i <k;i++)
{
printf( "请插入的数和插入的位置...\n ");
scanf( "%d,%d ",&u,&mun); //输入插入数..个插入第几个位置..
linkinsert(&a,u,mun); // 插入数..个插入第几个位置..
}
}
int linkinsert(linklist *l,int u,int mun)
{
int i,j=0;
linklist p,s,q;
p=(*l);
s=(linklist )malloc(sizeof(lnode));
if(s==NULL)
return 0;
if(p && j <mun-1 ) //找到要插入的位置...
{
p=p-> next; j++; //进行查找..
}
s-> next=p-> next;
p-> next=s; //进行插入...
for(q=(*l)-> next;q;q=q-> next) //输入插入的数...
printf( "%d ",q-> data);
return 1;
}
main()
{
linklist a;
int m;
printf( "请输入要输入多少个数......\n ");
scanf( "%d ",&m);
initlink(a,m);
return 1;
}
编译的时候有好多错哦....但有的我觉得没错..请大哥们帮个忙..!!..用VC编译一下下就知道了....!~!~不用小弟把错误信息也发上来吧...!!~! ...谢谢了...
[解决办法]
改好了,没有错误了
#include <stdio.h>
#include <stdlib.h>
typedef struct lnode //链表定义...
{
int data ; //数据域..
struct lnode *next ; //指针域.. 原来写的是londe
} lnode , *linklist ; // ...
int linkinsert(linklist l,int u,int mun); //要声明在前
int initlink(linklist *l,int k) //新键链表..l为接收链表 ,,k为想插入数的个数..
{
lnode a; //...
int i,u,mun;
(*l)=(linklist )malloc(sizeof(lnode)); //开空间....
if((*l)==NULL)
return 0;
(*l)-> next=NULL; // 链表为空....
for(i=0;i <k;i++)
{
printf( "请插入的数和插入的位置...\n ");
scanf( "%d,%d ",&u,&mun); //输入插入数..个插入第几个位置..
linkinsert(&a,u,mun); // 插入数..个插入第几个位置..
}
return 1; //要return
}
int linkinsert(linklist l,int u,int mun) //不用指向指针的指针了,只要是单的指针就行
{ //因为并不需要对指针进行修改
int i,j=0;
linklist p,s,q;
p=l;
s=(linklist )malloc(sizeof(lnode));
if(s==NULL)
return 0;
if(p && j <mun-1 ) //找到要插入的位置...
{
p=p-> next; j++; //进行查找..
}
s-> next=p-> next;
p-> next=s; //进行插入...
for(q=l-> next;q;q=q-> next) //输入插入的数...
printf( "%d ",q-> data);
return 1;
}
main()
{
linklist a;
int m;
printf( "请输入要输入多少个数......\n ");
scanf( "%d ",&m);
initlink(&a,m);
return 1;
}