C语言项目实战学生管理系统(3)
【摘要】 @TOC 前言本篇文章我们带大家学习如何查看学生信息及链表的释放。 一、查看学生信息查看每一个学生的信息需要我们去遍历链表第一步:定义一个结构体指针指向头,判断头是否为空为空则提示没有学生信息。第二步:每一次循环都让PTemp向后移动一个,当移动到最后一个时PTemp为NULL则不再执行循环。void showdate(){ STUNODE *pTemp = g_pHead; if (pTe...
@TOC
前言
本篇文章我们带大家学习如何查看学生信息及链表的释放。
一、查看学生信息
查看每一个学生的信息需要我们去遍历链表
第一步:定义一个结构体指针指向头,判断头是否为空为空则提示没有学生信息。
第二步:每一次循环都让PTemp向后移动一个,当移动到最后一个时PTemp为NULL则不再执行循环。
void showdate()
{
STUNODE *pTemp = g_pHead;
if (pTemp == NULL)
{
printf("无学生信息!\n");
}
while (pTemp != NULL)
{
printf("学号:%s,姓名:%s,分数:%d\n",pTemp->arrStunum,pTemp->arrStuname,pTemp->iStuSorce );
//向后移动
pTemp = pTemp->pNext;
}
}
二、链表的释放
链表的释放和链表的遍历有一些相同的地方
第一步:定义一个结构体指针指向头,判断头是否为空
第二步:使用PTemp记住头节点的位置,头节点向后移动一个位置,并把PTemp释放,如此循环就可以清空链表。
第三步:当清空完链表后要把头尾指针都指向NULL。
//清空链表
void FreeLinkDate()
{
STUNODE *pTemp = g_pHead;
while (g_pHead != NULL)
{
//记录节点
pTemp = g_pHead;
//向后移动
g_pHead = g_pHead->pNext;
//删除节点
free(pTemp);
}
g_pHead = NULL;
g_pEnd = NULL;
}
总结
大家可以自己好好操作一遍,有什么不清楚可以留言和私信。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)