c語言刪除連結串列問題,C語言刪除連結串列問題

2022-01-30 18:57:22 字數 2569 閱讀 8875

1樓:741852963一

del函式while改為:while(p1!=null)if(p1->data==num)

p1=p1->next;}

2樓:郝在益

這個就需要你判斷了,你首先需要將連結串列的資料全部遍歷一遍,在遍歷的同時就判斷該資料是否為你要刪除的資料,如果是,就刪除,繼續遍歷……一直到結束,這樣就可以吧1全部刪除了。

滿意請採納!

3樓:匿名使用者

用這個程式到處回答問題 發財了我 你看下原碼了 ,不懂可以問我的 ,必須要採納哦

理解二級指標就都好辦了

#include

#include

#include

struct student //定義節點型別

;typedef struct student * list; //定義節點的指標型別

void insert(list *ll,int age,char name) //插入元素

*ll=p;

}void remove(list *ll,char name) //ll為指向指標的指標,name為你要刪除的姓名

else

ll=&((*ll)->next); //不等於往下跳乙個節點}}

int main()}

4樓:匿名使用者

stl原始碼 remove

c語言如何刪除連結串列頭節點?

5樓:覃寞

這種刪除方法是頭節點存放值的,這樣可以清楚的看到是否刪除掉了頭節點。

用p儲存頭節點  p=head;

head指向下乙個節點,成為新的頭節點 head=p->next;

釋放原來的頭節點  free(p);

#include

#include

#include

void printlist(struct node *head);

struct node* delhead(struct node *head);

struct node;

int main()

printlist(head);

head=delhead(head);

printlist(head);

system("pause");

return 0;

}//刪除頭結點

struct node* delhead(struct node *head)

//列印連結串列

void printlist(struct node *head)printf("\n");}

6樓:匿名使用者

將定義乙個新的指標, 賦值給這個指標第二個節點

然後刪除頭節點 資料段 等,將頭節點賦值成 這個新的指標指向的節點就行了

7樓:匿名使用者

struct a

struct a* head;//指向頭結點

則刪除頭結點過程:

8樓:豆大根深

p->a,其中p為指向連結串列的指標, a為連結串列表頭節點,假如後續連結串列為:

a->b;

b->c;

c->d;

要刪除連結串列頭節點的話,修改p的指向位置即可:

p->a => p->b;

9樓:匿名使用者

表節點a -》頭節點b-》首節點c

**表節點沒資料

point p=a->nex;

a->next=p=>next;

free(p);

c語言連結串列刪除出現段錯誤

10樓:東北

1、在進入函式時,如果head==null,則會出現段錯誤,增加限制,如果head==null 就return。

2、struct student 物件一定要把成員next初始化為null。

3、連結串列struct student的每個成員要麼是全域性變數,要麼是動態分配空間的,不能是函式內的區域性變數。

3、不知道你p1的空間有沒有釋放掉,不然會造成記憶體洩漏

c語言的連結串列刪除問題

11樓:匿名使用者

你的while的大括號搞錯地方了

struct student *deletelinklist(struct student *head,int num)

while((num!=p->stunum)&&(null!=p->next))去掉這個

if(num==p->stunum)

else

printf("can not find!\n");

}//放到這裡來

return head;}

c語言連結串列的刪除問題

12樓:匿名使用者

struct student *delete(struct student *head,int num)

C語言連結串列

include include struct chain struct chain create return head struct chain inlink struct chain head,int a,int b int a代表要插入的節點,int b代表建立節點的資料域 if head v...

c語言連結串列建立和輸入,C語言連結串列建立和輸入

include link.h 實現類似於strlen struct string linkinfo bl stringlen blstring link char p block pnode null if null link 連結串列為空 if null link head else 當while...

用C語言求解 刪除字串的字元,用C語言求解 刪除乙個字串的乙個字元

int n maxstring 字串最大長度char n strsrc 原始串char n 1 strdes 目標串char delchar c int i 0 int j 0 for i 0 i n i 上面幾條語句就實現了你的要求。要輸出的話那簡單。int i 0 for i 0 i n 1 i...