数据结构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
相关推荐
WilliamHu.12 小时前
A2A协议
java·数据结构·算法
Remember_99312 小时前
【数据结构】Java数据结构深度解析:栈(Stack)与队列(Queue)完全指南
java·开发语言·数据结构·算法·spring·leetcode·maven
鱼很腾apoc12 小时前
【实战篇】 第13期 算法竞赛_数据结构超详解(上)
c语言·开发语言·数据结构·学习·算法·青少年编程
嘿嘿嘿x312 小时前
Modbus TCP 数据结构(发送和返回/读/写)
数据结构·网络协议·tcp/ip
tobias.b12 小时前
408真题解析-2009-42-数据结构-单链表与双指针技巧
数据结构·计算机考研·408真题解析
666HZ66612 小时前
数据结构3.0 栈、队列和数组
开发语言·数据结构·算法
tobias.b12 小时前
408真题解析-2009-41-数据结构-最短路径
数据结构·算法·计算机考研·408考研·408真题解析
星火开发设计13 小时前
循环结构进阶:while 与 do-while 循环的适用场景
java·开发语言·数据结构·学习·知识·循环
闪电麦坤9514 小时前
Leecode热题100:缺失的第一个正数(数组)
数据结构·算法·leetcode
晚风吹长发1 天前
初步了解Linux中的动静态库及其制作和使用
linux·运维·服务器·数据结构·c++·后端·算法