题解 | #牛牛的单向链表#
牛牛的单向链表
https://www.nowcoder.com/practice/95559da7e19c4241b6fa52d997a008c4
#include <stdio.h> #include <stdlib.h> typedef struct Node{ int data; struct Node* next; }node; node* creatlist(); //创建链表; node* creatNode(int data);// 创建节点; void insertNode(node* headNode, int data); void printlist(node* headNode);// 打印链表; int main() { int n,i; int array[] = {0}; int* p = array; node* list = creatlist(); scanf("%d\n", &n); p = (int*)malloc(n * sizeof(int)); for(i = 0;i<n;i++){ scanf("%d ",p+i); insertNode(list, *(p+i)); } printlist(list); return 0; } node* creatlist(){ node* headNode = (node*)malloc(sizeof(node)); headNode ->next = NULL; return headNode; } node* creatNode(int data){ node* newNode = (node*)malloc(sizeof(node)); newNode->data = data; newNode->next = NULL; return newNode; } void insertNode(node* headNode, int data){ node* newNode = creatNode(data); while(headNode->next){ headNode = headNode->next; } headNode->next = newNode; newNode->next = NULL; //headNode->next = newNode; } void printlist(node* headNode){ node* pmove = headNode->next; while(pmove){ printf("%d ",pmove->data); pmove = pmove->next; } }