C语言项目实战学生管理系统(1)

简介: C语言项目实战学生管理系统(1)

前言

本文我们正式讲解学生管理系统

一、创建学生节点

使用结构体可以很好的把每一个学生的信息都放在一个特点的位置,方便我们下面遍历每一个学生的信息。

#include<stdio.h>
//创建一个节点
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;
}


相关文章
|
8天前
|
程序员 C语言 开发者
pymalloc 和系统的 malloc 有什么区别
pymalloc 和系统的 malloc 有什么区别
|
4天前
|
程序员 C语言 开发者
pymalloc 和系统的 malloc 有什么区别?
pymalloc 和系统的 malloc 有什么区别?
|
1月前
|
存储 编译器 C语言
【C语言】学生管理系统:完整模拟与实现(一)
【C语言】学生管理系统:完整模拟与实现
|
30天前
|
存储 定位技术 API
C语言项目实战:贪吃蛇
C语言项目实战:贪吃蛇
|
1月前
|
存储 C语言
手把手教你用C语言实现通讯录管理系统
手把手教你用C语言实现通讯录管理系统
|
1月前
|
测试技术 C语言
【C语言】学生管理系统:完整模拟与实现(三)
【C语言】学生管理系统:完整模拟与实现
|
1月前
|
C语言
【C语言】学生管理系统:完整模拟与实现(二)
【C语言】学生管理系统:完整模拟与实现
|
3月前
|
存储 C语言
【C语言】C语言-宾馆客房管理系统(源码+论文)【独一无二】
【C语言】C语言-宾馆客房管理系统(源码+论文)【独一无二】
【C语言】C语言-宾馆客房管理系统(源码+论文)【独一无二】
|
3月前
|
存储 C语言
学生管理系统(C语言简单实现)
这篇文章是关于使用C语言实现一个简单的学生管理系统,包括文件的基本应用、数据结构设计、函数实现以及用户界面交互。
学生管理系统(C语言简单实现)
|
3月前
|
存储 数据可视化 数据安全/隐私保护
【C语言】C语言-成绩管理系统(管理员+教师+学生 源码)【独一无二】
【C语言】C语言-成绩管理系统(管理员+教师+学生 源码)【独一无二】