当前位置: 首页 > news >正文

链栈的引用

链栈,自己实现一遍,但是节点存储不是整数,存储学生信息(年龄,分数,姓名)三级引用。

1、建立学生信息结构体,将data改为学生信息结构体类型。

2、循环入栈和出栈。 

#include<myhead.h>
typedef struct 
{int age;float score;char name[20];
}stu;
typedef struct node
{stu data;struct node *next;
}Link,*Pstu;
typedef struct 
{Pstu top;Pstu next;
}Stack,*Pstack;
Pstack create()
{Pstack p=malloc(sizeof(Stack));if(p==NULL){printf("创建头结点失败\n");return NULL;}p->top=NULL;p->next=NULL;
}
int push(Pstack S)
{int e;if(S==NULL){printf("入栈失败\n");return -1;}Pstu p=malloc(sizeof(Link));printf("年龄:\t");scanf("%d",&p->data.age);printf("分数:\t");scanf("%f",&p->data.score);printf("姓名:\t");scanf("%s",p->data.name);p->next=S->next;S->next=p;S->top=p;return 0;
}
void output(Pstack S)
{Pstu t=S->next;while(t!=NULL){printf("年龄:%d\t分数:%.2f\t姓名:%s\n",t->data.age,t->data.score,t->data.name);t=t->next;}
}
int main(int argc, const char *argv[])
{Pstack S=create();//创建头结点//循环入栈int i,n;printf("请输入学生个数:");scanf("%d",&n);for(i=0;i<n;i++){push(S);}//出栈output(S);return 0;
}

代码演示


http://www.mrgr.cn/news/63521.html

相关文章:

  • flutter 用PUT的方式传输文件不带分隔符
  • cad刷新快捷键是什么及如何使用?
  • 2024年【广东省安全员C证第四批(专职安全生产管理人员)】新版试题及广东省安全员C证第四批(专职安全生产管理人员)复审考试
  • 大数据导论第八章作业
  • 98、Python并发编程:Python的伪多线程、GIL以及自由线程特性
  • 深入理解 Java UUID 五个版本的区别及使用场景
  • C# 两个不同文件路径的同步
  • Latex中Reference的卷号加粗的问题
  • 指令系统 II(程序的机器级代码表示、CISC 和 RISC)
  • 写一个小日历
  • 中电金信:GienTech动态|丰收之秋,公司多项目获得荣誉
  • 如何解决docker镜像下载失败问题
  • (9)位运算
  • 用友U8采购入库单与旺店通·企业奇门集成方案解析
  • [CSP篇] CSP2024 游记(下)
  • 机器学习:我们能用机器学习来建立投资模型吗
  • C++模拟实现list
  • 第5章第6章 Servlet技术
  • 【果实种子识别】Python+深度学习+人工智能+CNN卷积神经网络算法+TensorFlow+算法模型训练
  • 【升华】机器学习鸢尾花分类完整代码示例
  • 助力抑郁症初筛!上海交大团队构建Agent心理诊所,论文一作在线展示demo,分享技术亮点
  • Games101笔记-三维Transform变换(三)
  • python--函数详解二
  • ngnix.conf文件配置前后端联调地址
  • 8.FreeRTOS之软件定时器
  • Linux云计算 |【第五阶段】CLOUD-DAY7