当前位置:网站首页>C 学生管理系统 显示链表信息、删除链表
C 学生管理系统 显示链表信息、删除链表
2022-08-04 00:38:00 【joker_0030】
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include <string.h>
//学生节点。
typedef struct _STU
{
char arrStuNum[10];
char arrStuName[10];
int iStuScore;
struct _STU* pNext;//指向下一个节点。
}STUNODE;
//申明链表的头和尾。
STUNODE* g_pHead = NULL;
STUNODE* g_pEnd = NULL;
//清空链表。
void FreeLinkData();
//打印数据(链表)。
void ShowStuData();
//显示指令。
void ShowOrder();
int main()
{
int nOrder = -1;
char arrStuNum[10] = { '\0' };
char arrStuName[10] = { '\0' };
int iStuScore = -1;
int nFlag = 1;
//显示指令。
ShowOrder();
while (nFlag)
{
printf("请输入操作指令(0为查看指令)\n");
scanf("%d", &nOrder);
switch (nOrder)
{
case 1://添加一个学生信息。
printf("输入学号:");
scanf("%s", arrStuNum);
printf("输入姓名:");
scanf("%s", arrStuName);
printf("输入分数:");
scanf("%d", &iStuScore);//取地址。
AddStuMSG(arrStuNum, arrStuName, iStuScore);
break;
case 2:
break;
case 3:
break;
case 4:
break;
case 5:
break;
case 6:
break;
case 7:
break;
case 8://打印数据(链表)。
ShowStuData();
break;
case 9:
nFlag = 0;
break;
case 0:
//查看指令。
ShowOrder();
break;
default:
printf("输入的指令不对");
break;
}
}
//释放链表。
FreeLinkData();
system("pause");
return 0;
}
//清空链表。
void FreeLinkData()
{ //记录节点。
STUNODE* pTemp = g_pHead;
while (g_pHead != NULL)
{//记录节点。
pTemp = g_pHead;
//向后移动一个。
g_pHead = g_pHead->pNext;
//删除节点。
free(pTemp);
}
}
//打印数据。
void ShowStuData()
{
STUNODE* pTemp = g_pHead;
while (pTemp != NULL)
{
printf("学号:%s,姓名:%s,成绩:%d\n", pTemp->arrStuNum, pTemp->arrStuName, pTemp->iStuScore);
//向下走一步。
pTemp = pTemp->pNext;
}
}
//显示指令。
void ShowOrder()
{
printf("*******************学生管理系统******************\n");
printf("******************系统操作指令如下****************\n");
printf("***1、增加一个学生信息***\n");
printf("***2、查找指定学生信息(姓名/学号)***\n");
printf("***3、修改指定学生的信息***\n");
printf("***4、保存业主的信息到文件***\n");
printf("***5、读取文件中的业主信息***\n");
printf("***6、删除指定学生的信息***\n");
printf("***7、恢复删除的学生信息***\n");
printf("***8、显示所有学生信息***\n");
printf("***9、退出系统***\n");
printf("*****************************************************\n");
}
边栏推荐
- It will invest about 200 billion US dollars in the United States in 20 years, and Samsung Electronics looks so handsome
- 北京电竞元宇宙论坛活动顺利召开
- ping数据包中的进程号
- ES6高级-迭代器与生成器的用法
- The Beijing E-sports Metaverse Forum was successfully held
- XSS-绕过for循环过滤
- corn表达式 具体详解与案例
- 做项目一定用得到的NLP资源【分类版】
- C语言 函数递归
- 一文参透分布式存储系统Ceph的架构设计、集群搭建(手把手)
猜你喜欢
分子个数 数论(欧拉函数 前缀和
BGP实验(含MPLS)
LYVE1抗体丨Relia Tech LYVE1抗体解决方案
Eight things to pay attention to in spot silver
typescript51-泛型的基本使用
jmeter distributed stress test
Talking about the future development direction of my country's industrial parks
Node.js的基本使用(三)数据库与身份认证
全面讲解 Handler机制原理解析 (小白必看)
Apple told Qualcomm: I bought a new campus for $445 million and may plan to speed up self-development of baseband chips
随机推荐
LeetCode第三题(Longest Substring Without Repeating Characters)三部曲之三:两次优化
typescript51 - basic use of generics
c语言分层理解(c语言操作符)
浅谈我国产业园区未来的发展方向
ENS域名注册量创历史新高 逆市增长之势?光环之下存在炒作风险
WMS仓储管理系统能解决电子行业哪些仓库管理问题
如何通过单步调试的方式找到引起 Fiori Launchpad 路由错误的原因试读版
【每日一题】899. 有序队列
typescript53 - generic constraints
面试必问的HashCode技术内幕
Electronics manufacturing enterprise deployment WMS what are the benefits of warehouse management system
因为一次bug的教训,我决定手撕Nacos源码(先撕客户端源码)
dynamic memory two
Nanoprobes 棕榈酰纳米金相关说明书
win10+cuda11.7+pytorch1.12.0安装
[Miscellaneous] How to install the specified font into the computer and then use the font in the Office software?
现货白银需要注意八大事项
ES6高级-迭代器与生成器的用法
Vant3 - click on the corresponding name name to jump to the next page corresponding to the location of the name of the TAB bar
Eight things to pay attention to in spot silver