學生管理系統,輸入學生的姓名和學號,然后再輸出:
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include <stdlib.h> typedef struct STU// 用typedef 來進行取別名 { int num;//學號 char name[20];//名字 struct STU *pnext;//這個指針指向下一個節點 }STU ; //以上僅僅是對的聲明,並沒有在內存中分配空間 //創建一個數據鏈表 //創建一個頭節點 STU* CreatList() { STU* P = (STU*)malloc(sizeof(STU));//新建一個節點 P->pnext = NULL;//安全 //P->name; //P->num;由於是帶頭結點,所以不含數據 return P; } //添加一個節點 void AddNode(STU* P) { STU *pNew = (STU*)malloc(sizeof(STU));//重新定義一個指針並開辟一塊內存 printf("請輸入該學員的信息:\n"); printf("姓名:\n"); scanf("%s",pNew->name); printf("學號:\n"); scanf("%d",&pNew->num); pNew->pnext = NULL; //連接起來 P->pnext = pNew; } int main() { STU* pStu=NULL;//定義一個指針 需要來接收鏈表的首地址 pStu = CreatList();//把頭結點定義好 AddNode(pStu);//添加一個節點 printf("%d\t%s\n",pStu->pnext->num,pStu->pnext->name); _getch(); return 0; }
之前在網上搜到的一個關於鏈表講解的視頻:
https://www.iqiyi.com/w_19ry8zue6p.html
