数据结构8.12

作业:创建单链表,存储4个学生信息(年龄,分数,姓名)。

1、建立学生结构体数组,存放4个学生信息,循环调用插入函数,建立整表

2、任意位置插入一个新学生。变量e是学生结构体变量。

3、任意位置删除一个学生。

4、单链表逆置后将学生信息输出。

main.c

cs 复制代码
#include"stu.h"
int main(int argc, const char *argv[])
{
	Pnode stu = input_stu();
	for(int i = 0;i<MAX;i++)
	{
		tail_insert(stu,input_stu());
	}
	return 0;
}

stu.c

cs 复制代码
#include"stu.h"

Pnode get_head()
{
	Pnode p = malloc(sizeof(Node));
	if(p==NULL)
	{
		printf("申请失败\n");
		return NULL;
	}
	p->len = 0;
	p->next = NULL;
	return p;
}

int input_stu(Pnode L)
{
	int i;
	for(i = 0;i<MAX;i++)
	{
		printf("请输入第%d个学生的姓名:\n",i+1);
		scanf("%s",L->data[i].name);
		printf("请输入第%d个学生的年龄:\n",i+1);
		scanf("%d",L->data[i].age);
		printf("请输入第%d个学生的成绩:\n",i+1);
		scanf("%d",L->data[i].score);
	}
	L->len++;
	return 0;

}

stu.h

cs 复制代码
#ifndef _STU_H_
#define _STU_H_
#include<myhead.h>
#define MAX 4

typedef struct stu
{
	char name[20];
	int age;
	int score;
};

typedef struct node
{
	union
	{
		stu data;
		int len;
	}
	struct node *next;
}Node,*Pnode;


#endif
相关推荐
浅念-4 小时前
刷穿LeetCode:BFS 解决 Flood Fill 算法
数据结构·c++·算法·leetcode·职场和发展·bfs·宽度优先
im_AMBER7 小时前
手撕hot100之矩阵!看完这篇就AC~
javascript·数据结构·线性代数·算法·leetcode·矩阵
如君愿7 小时前
考研复习 Day 30 | 习题--计算机网络 第五章(运输层 上)、数据结构 图(上)
数据结构·计算机网络·课后习题
weixin_421725267 小时前
C语言中volatile关键字怎么用C语言volatile在多线程中的作用
c语言·数据结构·运算符优先级·变量命名·volatile关键字
05候补工程师9 小时前
【408 从零到一】线性表逻辑特征、存储结构对比与 C/C++ 动态内存分配避坑指南
c语言·开发语言·数据结构·c++·考研
努力努力再努力wz10 小时前
【MySQL 进阶系列】拒绝滥用root:从 mysql.user 到权限校验,带你彻底理解用户管理与授权机制!
android·c语言·开发语言·数据结构·数据库·c++·mysql
炸膛坦客10 小时前
嵌入式 - 数据结构与算法:(1-4)数据结构 - 单链表的两个核心缺点(引入循环/双向链表)
c语言·数据结构·链表
Hesionberger11 小时前
LeetCode 78:子集生成全攻略
java·开发语言·数据结构·python·算法·leetcode·职场和发展
上弦月-编程12 小时前
高效编程利器:转移表技术解析
c语言·开发语言·数据结构·算法·排序算法
薇茗12 小时前
【初阶数据结构】 左右逢源的分支诗律 二叉树2
c语言·数据结构·算法·二叉树