#include<>#include<>#include<>#defineNULL0typedefstructLnode{ intdata; structLnode*next;}Lnode,*linkList;voidcreateList(linkList*L,intn){ Lnode*p,*q; inti; (*L)=(linkList)malloc(sizeof(Lnode)); (*L)->next=NULL; q=(*L); for(i=1;i<=n;i++) { p=(Lnode*)malloc(sizeof(Lnode)); scanf("%d",&p->data); q->next=p; q=p; p->next=NULL; }}voidprintout(linkListL){ linkListp; p=L->next; while(p) { printf("%d",p->data); p=p->next; }}voidinsert(linkList*L,intelement,intw){ linkListp,q; intj=1;q=(*L)->next; p=(linkList)malloc(sizeof(Lnode));p->data=element; if(w==1) { p->next=(*L)->next;(*L)->next=p; } else {while(q&&j<w-1) {q=q->next; j++; } p->next=q->next; q->next=p; }}del(linkList*L,intw){ intelement; linkListp; intj=1; p=(*L)->next; if(w==1) {(*L)->next=p->next; } else { while(j<w-1) { p=p->next; j++; } element=p->next->data; p->next=p->next->next; } returnelement;}main(){ linkListL; intn,w,element; printf("inputthenumberofList:"); scanf("%d",&n);printf("inputyoudatas:"); createList(&L,n); printf("thedatasare:"); printout(L); printf("\nthedatayouwanttoinsert:"); scanf("%d",&element); printf("thelocationyouwanttoinsert:"); scanf("%d",&w); insert(&L,element,w); printf("Nowyourlistis:"); printout(L); printf("\ninputthelocationofyouwanttodelete:"); scanf("%d",&w); printf("thedataof%disdelete!",del(&L,w)); printf("\nNowyourlistis:"); printout(L); printf("\n"); system("pause");}?(A),错误的是哪一个?(B),必须占用一片连续的存储单元。,便于进行插入和删除操作。,不必占用一片连续的存储单元。,便于插入和删除操作。(C)的有限序列(n>0)。,则利用(A)存储方式最节省时间。,则采用(D)存储方式最节省运算时间。,则选用(D)最节省时间。。则采用(D)存储方式最节省运算时间。(C).A
数据结构作业 来自淘豆网www.taodocs.com转载请标明出处.