建立一个链表,每个结点包括学号,姓名,性别,年龄。输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,则将此结点删去。

该程序设计了链表数据结构,用于存储学生信息(学号、姓名、性别、年龄)。通过头插法和尾插法添加学生,然后提供了一个功能删除所有年龄等于给定年龄的学生。最后,展示了链表内容并清空链表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

程序设计
#include <stdio.h>
#include <string.h>
#include <malloc.h>
typedef struct _STU //定义一个学生结构体变量
{
int num;
char name[20];
char sex;
int age;
_STU(int n, char nm[],char sx,int ag)
{
num = n;
strcpy(name, nm);
sex = sx;
age = ag;
}
}STU;
typedef struct _NODE
{
STU s;
struct _NODE *next;
}NODE ,*PNODE;
void InsertHead(PNODE *ppHead, STU s) //插入头结点
{
PNODE PNew = (PNODE)malloc(sizeof(NODE));
PNew->s= s;
PNew->next = *ppHead;
*ppHead = PNew;

}
void InsertTail(PNODE *ppHead,STU s) //链表的尾插法
{
if (NULL == *ppHead)
{
InsertHead(ppHead, s); //若头结点为空,则头插一个结点
}
else
{
PNODE pos = *ppHead;
while (pos->next != NULL)
{
pos = pos->next;
}
PNODE PNew = (PNODE)malloc(sizeof(NODE)); //用malloc开辟一个空间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值