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

顺序表之创建,判满,插入,输出

文章目录

  • 🍊自我介绍
  • 🍊创建一个空的顺序表,为结构体在堆区分配空间
  • 🍊插入数据
  • 🍊输出数据
  • 🍊判断顺序表是否满了,满了返回值1,否则返回0
  • 🍊main函数


你的点赞评论就是对博主最大的鼓励
当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~


🍊自我介绍

  Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群的一名“创始团队·嘉宾”“内容共创官” ,现在我来为大家介绍一下有关物联网-嵌入式方面的内容。


🍊创建一个空的顺序表,为结构体在堆区分配空间

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAX 10typedef int datafype_t;
typedef struct
{datatype_t buf[MAX];int n;
}seqlist_t;seqlist_t *creat_empty_seqlist()
{seqlist_t *l = (seqlist *)malloc(sizeof(seqlist_t));if(NULL == l){printf("malloc is fall!\n");return NULL;}memset(l,0,seizeof(seqlist_t));//初始化,把l中的前sizeof(seqlist_t)个空间用 0 替换return l;
}

🍊插入数据

我们分析一下可以知道,n初始值为0,当插入一个数据之后,n为1,插入两个数据后,n为2…以此类推。所以我们可以利用n的值来表示下一次插入的位置。

void insert_data_seqlist(seqlist *l,datafype_t data)
{l->buf[l->n] = data;l->n++;return ;
}

🍊输出数据

void print_data_seqlist(seqlist *l)
{int i = 0;for(i = 0;i < l->n;i++){printf("%d ",l->buf[i]);}printf("\n");
}

🍊判断顺序表是否满了,满了返回值1,否则返回0

int is_full_seqlist()
{return l->n ==MAX ? 1 : 0;
}

🍊main函数

int main()
{seqlist_t *l = creat_empty_seqlist();datatype_t data;//int data;printf("please input %d number: ",MAX);while(!is_full_seqlist(l)){scanf("%d",&data);insert_data_seqlist(l,data);}print_data_seqlist(l);free(l);l = NULL;return 0;
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 设计模式之状态模式 (C++ 实现)
  • 等级保护学习
  • 掏耳勺买哪种效果好?五大可视掏耳勺测评总汇
  • 前端:HTML、CSS、JS、Vue
  • 网络层ip协议
  • 单例的饿汉式,懒汉式的线程安全问题
  • 智能代码编辑器:Visual Studio Code的深度剖析
  • k8s--关于pod方面问题的排错思路与方法
  • .NetCore+vue3上传图片 Multipart body length limit 16384 exceeded.
  • redis常用知识汇总(包括 jedis 和 springboot 整合 redis)
  • Matlab自学笔记三十五:表table数据与外部文件的读入和写出
  • SpringBoot项目是如何启动
  • 工厂ERP管理系统实现源码(JAVA)
  • Linux查找文件 find、locate、grep等使用说明
  • Lua 脚本在 Redis 中执行时的原子性以及与redis的事务的区别
  • 〔开发系列〕一次关于小程序开发的深度总结
  • 2019.2.20 c++ 知识梳理
  • 5、React组件事件详解
  • Bytom交易说明(账户管理模式)
  • canvas 五子棋游戏
  • echarts的各种常用效果展示
  • js ES6 求数组的交集,并集,还有差集
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 关于 Linux 进程的 UID、EUID、GID 和 EGID
  • ------- 计算机网络基础
  • 将回调地狱按在地上摩擦的Promise
  • 普通函数和构造函数的区别
  • 前端工程化(Gulp、Webpack)-webpack
  • 深度学习在携程攻略社区的应用
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  • 写代码的正确姿势
  • 异常机制详解
  • 硬币翻转问题,区间操作
  • 栈实现走出迷宫(C++)
  • media数据库操作,可以进行增删改查,实现回收站,隐私照片功能 SharedPreferences存储地址:
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • ​你们这样子,耽误我的工作进度怎么办?
  • #13 yum、编译安装与sed命令的使用
  • #Linux杂记--将Python3的源码编译为.so文件方法与Linux环境下的交叉编译方法
  • (6)添加vue-cookie
  • (Matalb分类预测)GA-BP遗传算法优化BP神经网络的多维分类预测
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (附源码)ssm航空客运订票系统 毕业设计 141612
  • (附源码)ssm基于web技术的医务志愿者管理系统 毕业设计 100910
  • (一)ClickHouse 中的 `MaterializedMySQL` 数据库引擎的使用方法、设置、特性和限制。
  • (一)Docker基本介绍
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .equals()到底是什么意思?
  • .gitignore文件---让git自动忽略指定文件
  • .mp4格式的视频为何不能通过video标签在chrome浏览器中播放?
  • .NET BackgroundWorker
  • .net CHARTING图表控件下载地址
  • .NET Core 控制台程序读 appsettings.json 、注依赖、配日志、设 IOptions
  • .Net 基于.Net8开发的一个Asp.Net Core Webapi小型易用框架