main.c
#include"head.h"
int main(int argc, const char *argv[])
{
Linklist L=NULL;
int n;
datatype e;
printf("please n:");
scanf("%d",&n);
for(int i=0;i<n;i++)
{
printf("please enter element:");
scanf("%d",&e);
//头插
// L=insert_heat(e,L);
//尾插
L=insert_rear(e,L);
}
output(L);
datatype pos;
printf("请输入要进行修改的 位置pos:");
scanf("%d",&pos);
printf("请输入要修改的值");
scanf("%d",&e);
search_data(L,pos); //查找
L=modify(L,pos,e); //修改
output(L);
return 0;
}
text.c
//计算len
int len_Linklist(Linklist L)
{
int c=0;
while(L!=NULL)
{
c++;
L=L->next;
}
return c;
}
Linklist modify(Linklist L,datatype pos,datatype e)
{
if(NULL==L || pos<0 || pos>len_Linklist(L))
return NULL;
Linklist p=L;
for(int i=1;i<pos;i++)
{
p=p->next;
}
p->data=e;
return L;
}
void search_data(Linklist L,datatype pos) //查找
{
if(NULL==L || pos<0 || pos>len_Linklist(L))
printf("查找失败");
for(int i=1;i<pos;i++)
{
L=L->next;
}
printf("这个值是:%d\n",L->data);
}
//顺序表排序
void BULL(sqlist *list){
for(int i=0;i<list->len-1;i++){
int count=0;
for(int j=0;j<list->len-1-i;j++){
if(list->data[j]>list->data[j+1]){
datatypedef t=list->data[j];
list->data[j]=list->data[j+1];
list->data[j+1]=t;
count++;
}
}
if(count==0)
break;
}
}