数据结构2月19日

题目:顺序表作业

代码:

功能区:

 #include <stdio.h>#include <stdlib.h>#include "./d2191.h"SeqList* create_seqList(){SeqList* list = (SeqList*)malloc(sizeof(SeqList));if(NULL== list){return NULL;}list->pos=0;//初始化要操作的位置为0return list;}void insert_seqList(SeqList* list,dataype num){//判断顺序表是否为满if(list->pos >=N){printf("顺序表为满,插入失败\n");return;}//在pos位置插入数据list->data[list->pos] = num;//将pos++(list->pos)++;printf("插入成功\n");return;}void show_seqList(SeqList* list){int i;for(i=0;i<=list->pos;i++){printf("%d ",list->data[i]);}printf("\n");}dataype del_seqList(SeqList* list){//判断顺序表是否为空if(list->pos > 0){(list->pos)--;dataype num =list->data[list->pos];return num;}}//从下标插入数据void index_seqList(SeqList* list,int index,int temp){int i ;if(index<=0||index>=N||list->pos >=N){printf("要插入的下标错误或者超出");return;}for(i=list->pos;i>index;i--){list->data[i]=list->data[i-1];}(list->pos)++;list->data[index]=temp;return;}//从下标删除数据dataype deletebyindex_seqList(SeqList* list,int index){int i;if(index<=0||index>=N||list->pos >=N){printf("要删除的下标错误或者超出");return 0;}int beifen=list->data[index];for(i=index;i<list->pos;i++){list->data[i]=list->data[i+1];}(list->pos)--;return beifen;}//从下标修改数据void update_seqList(SeqList* list,int index,int newnum){if(index<0||index>list->pos){printf("非法输入\n");return;}list->data[index]=newnum;printf("修改成功\n");return;}//按下标查找数据dataype find_seqList(SeqList* list,int index){if(index<0||index>list->pos){printf("非法输入\n");return 0;}return list->data[index];}//按数据修改数据void updatebydata_seqList(SeqList* list,int oldnum,int newnum){int i;for(i=0;i<list->pos;i++){if(list->data[i]==oldnum){list->data[i]=newnum;}}printf("更新完成\n");return ;}//按数据查找位置int selectbydata_seqList(SeqList* list,int num){int i;for(i=0;i<list->pos;i++){if(list->data[i]==num){return i;}}

函数调用区:

include <stdio.h>
include "./d2191.h"
nt main(int argc, const char *argv[])//创建一个顺序表SeqList* list = create_seqList();//从尾部插入数据insert_seqList(list,10);insert_seqList(list,100);insert_seqList(list,1000);insert_seqList(list,10000);insert_seqList(list,10);//从尾部删除printf("%d\n", del_seqList(list));//从下标插入数据index_seqList(list,5,888);show_seqList(list);//从下标删除数据printf("%d\n",deletebyindex_seqList(list,3));show_seqList(list);                                        //从下标修改数据update_seqList( list,3,66);show_seqList(list);//按下标查找数据printf("查找的数据是%d\n",find_seqList(list,3));//按数据修改数据updatebydata_seqList(list,10,11);show_seqList(list);//按数据查找位置printf("该数字在第几个%d\n",selectbydata_seqList(list,66));return 0;

头文件区:

 #ifndef FUNC_C_#define FUNC_C_#define N 6//顺序表容量typedef int dataype;typedef struct{dataype data[N];//顺序表int pos;//记录要操作顺序表的位置}SeqList;SeqList* create_seqList();void insert_seqList(SeqList* list,dataype num);void show_seqList(SeqList* list);dataype del_seqList(SeqList* list) ;void index_seqList(SeqList* list,int index,int temp);dataype deletebyindex_seqList(SeqList* list,int index);void update_seqList(SeqList* list,int index,int newnum);dataype find_seqList(SeqList* list,int index);void updatebydata_seqList(SeqList* list,int oldnum,int newnum);int selectbydata_seqList(SeqList* list,int num);#endif                                                            

运行结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/485630.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

22-树-二叉树的后序遍历

这是树的第22篇算法&#xff0c;力扣链接。 给你一棵二叉树的根节点 root &#xff0c;返回其节点值的 后序遍历 。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[3,2,1] 我们来回忆一下后续遍历逻辑&#xff1a; 后序遍历 (Postorder Traversal) …

为什么选择OV证书以及如何申请?

在信息化高度发达的今天&#xff0c;对于企业而言&#xff0c;在线交易、数据传输的安全性直接影响到品牌形象和用户信任度。在这个背景下&#xff0c;SSL/TLS证书中的组织验证&#xff08;Organization Validated&#xff0c;简称OV&#xff09;证书因其独特的安全性和权威性&…

QT中调用python

一.概述 1.Python功能强大&#xff0c;很多Qt或者c/c开发不方便的功能可以由Python编码开发&#xff0c;尤其是一些算法库的应用上&#xff0c;然后Qt调用Python。 2.在Qt调用Python的过程中&#xff0c;必须要安装python环境&#xff0c;并且Qt Creator中编译器与Python的版…

如何理解跨境ERP定制中的技术要点与挑战?

在跨境电商领域日益竞争激烈的今天&#xff0c;企业需要依靠先进的ERP系统来实现信息管理、数据整合和业务流程优化。而针对不同国家和地区的特殊需求&#xff0c;跨境ERP定制越来越成为企业必须面对的挑战。本文将深入探讨跨境ERP定制中的技术要点与挑战&#xff0c;帮助企业更…

缓存篇—缓存雪崩

什么是缓存雪崩 通常我们为了保证缓存中的数据与数据库中的数据一致性&#xff0c;会给 Redis 里的数据设置过期时间&#xff0c;当缓存数据过期后&#xff0c;用户访问的数据如果不在缓存里&#xff0c;业务系统需要重新生成缓存&#xff0c;因此就会访问数据库&#xff0c;并…

windows如何恢复删除文件?「2024恢复策略」

在数字时代&#xff0c;数据无疑是最为宝贵的财富之一。然而&#xff0c;无论是因为误操作、病毒感染还是其他各种原因&#xff0c;我们时常会面临文件被误删的风险。当重要的文件从Windows系统中消失时&#xff0c;许多用户都会感到焦虑和无助。那么&#xff0c;Windows系统下…

CSS 面试题汇总

CSS 面试题汇总 1. 介绍下 BFC 及其应 参考答案&#xff1a; 参考答案&#xff1a; 所谓 BFC&#xff0c;指的是一个独立的布局环境&#xff0c;BFC 内部的元素布局与外部互不影响。 触发 BFC 的方式有很多&#xff0c;常见的有&#xff1a; 设置浮动overflow 设置为 auto、scr…

SWIFT:自我认知微调

文档:https://github.com/modelscope/swift/blob/main/docs/source/LLM/%E8%87%AA%E6%88%91%E8%AE%A4%E7%9F%A5%E5%BE%AE%E8%B0%83%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5.md ​​​​​​代码: Swift是如何把自我认知数据集融合到训练集中呢? 1:相关的3个参数

【Linux】一站式教会:Ubuntu(无UI界面)使用apache-jmeter进行压测

&#x1f3e1;浩泽学编程&#xff1a;个人主页 &#x1f525; 推荐专栏&#xff1a;《深入浅出SpringBoot》《java对AI的调用开发》 《RabbitMQ》《Spring》《SpringMVC》 &#x1f6f8;学无止境&#xff0c;不骄不躁&#xff0c;知行合一 文章目录 前言一、Java…

【深度学习目标检测】十八、基于深度学习的人脸检测系统-含GUI和源码(python,yolov8)

人脸检测是计算机视觉中的一个重要方向&#xff0c;也是一个和人们生活息息相关的研究方向&#xff0c;因为人脸是人最重要的外貌特征。人脸检测技术的重要性主要体现在以下几个方面&#xff1a; 人脸识别与安全&#xff1a;人脸检测是人脸识别系统的一个关键部分&#xff0c;是…

【了解机器学习的定义与发展历程】

曾梦想执剑走天涯&#xff0c;我是程序猿【AK】 目录 简述概要知识图谱 简述概要 了解机器学习的定义与发展历程 知识图谱 机器学习&#xff08;Machine Learning&#xff0c;ML&#xff09;是一门跨学科的学科&#xff0c;它使用计算机模拟或实现人类学习行为&#xff0c;通…

我们在SqlSugar开发框架中,用到的一些设计模式

我们在《SqlSugar开发框架》中&#xff0c;有时候都会根据一些需要引入一些设计模式&#xff0c;主要的目的是为了解决问题提供便利和代码重用等目的。而不是为用而用&#xff0c;我们的目的是解决问题&#xff0c;并在一定的场景下以水到渠成的方式处理。不过引入任何的设计模…