C语言项目实战学生管理系统(1)
文章目录
前言
本文我们正式讲解学生管理系统
一、创建学生节点
使用结构体可以很好的把每一个学生的信息都放在一个特点的位置,方便我们下面遍历每一个学生的信息。
#include//创建一个节点typedef struct _STU{char arrStunum[10];//学生学号char arrStuname[10];//学生姓名int iStuSorce;//学生分数struct _STU*pNext;//指向下一个节点指针} STUNODE;//声明链表的头和尾STUNODE *g_pHead = NULL; //不赋值指针就成了野指针STUNODE *g_pEnd = NULL;int main(void){ //对学生信息进行初始化char arrStunum[10] = { '\0' };char arrStuname[10]= { '\0' };int iStuSorce=-1;STUNODE *Ptemp = NULL;}
二、尾添加一个学生的信息
我们需要创建一个函数用来添加每一个学生的信息,这个函数包含了三个参数,分别是学生学号、学生名字、学生分数。
1.进入函数第一步需要检测参数是否合法不合法则退出函数
2.创建一个学生节点
3.对节点成员进行赋值
4.把学生节点都链接起来(这一步有点复杂我们单独用一篇文章进行讲解)
//添加一个学生信息void AddstuMSG(char arrStunum[10], char arrStuname[10], int iStuSorce);`//添加一个学生信息void AddstuMSG(char arrStunum[10], char arrStuname[10], int iStuSorce){//第一步检验参数合法性if (0 == arrStunum[10] || 0 == arrStuname[10] || iStuSorce < 0){printf("学生信息输入错误!\n");return; //信息错误跳出函数}//逻辑//创造一个节点STUNODE *pTemp = malloc(sizeof(STUNODE));//节点成员赋初始值strcpy(pTemp->arrStunum, arrStunum); //学生学号和姓名都是字符串用strcpy进行赋值strcpy(pTemp->arrStuname, arrStuname);pTemp->iStuSorce = iStuSorce;pTemp->pNext = NULL; //指向下一个节点的指针赋值为空//接在链表上if (NULL == g_pHead || NULL == g_pEnd) //只有一个节点{g_pHead = pTemp; //用头和尾指向新链表的地址//g_pEnd = pTemp;}else //存在多个节点{g_pEnd->pNext = pTemp; //来一个新的节点只要让尾的下一个指向新的节点(链接)//g_pEnd = pTemp; //向后移动}g_pEnd = pTemp;}
创作打卡挑战赛
赢取流量/现金/CSDN周边激励大奖