링크 에서 지정 한 요 소 를 삭제 합 니 다.

11928 단어 데이터 구조
이 단락 코드 가 실현 되 었 다.
1 새 링크
2 출력 링크
3. 링크 의 지정 요 소 를 삭제 합 니 다.
#include 
#include 
#include
#include "test1.h"

/*
       
*/
typedef struct Node {
	int data;//  
	struct Node *next;//        
}Node;
int count = 0;//       

Node *InitList() {
	Node *head;//     
	Node *q, *p;//               
	head = (Node *)malloc(sizeof(Node));
	q = head;
	while (1)
	{
		count++;
		p = (Node *)malloc(sizeof(Node));
		printf("    %d  : (      0):   ", count);
		scanf_s("%d", &p->data);
		if (p->data == 0) {
			return head;
		}
		//                P      ,q      
		p->next = NULL;
		q->next = p;
		q = p;
	}
}

void showList(Node *m) {
	Node *p;
	p = m->next;// p         
	while (p!=NULL)
	{	
		//               
		printf("%d
"
, p->data); p = p->next; } } void DeleteListItem(Node *n,int x) { Node *p,*q,*pre; //p ,q , pre , p = n->next;// p , pre = n; while (p!=NULL) { if (p->data==x) { printf(" %d---%d
"
,p->data,x); q = p;//q p = p->next;// pre->next = p;// , ,next P free(q);// count--; }else { pre = p; p = p->next; } } } int main() { // Node *m = InitList(); // showList(m); printf(" : "); int d; scanf_s("%d", &d); // DeleteListItem(m, d); // printf(" :
"
, d); printf(" :%d
"
, count); showList(m); system("pause"); return 0; }

좋은 웹페이지 즐겨찾기