数据结构-顺序表的初始化

2023-10-27



//顺序表的初始化
#include <stdio.h>
#include <stdlib.h>//
#define OK 1;
#define OVERFLOW -2
#define MAXSIZE 100//顺序表可能达到的最大长度 
typedef int Status;//Status是函数的类型,其值是函数结果状态代码,如OK等  
typedef int ElemType;//ElemType是线性表中数据元素的类型,此处用int
typedef struct
{
	ElemType *elem;//存储空间的基地址 
	int length;//当前长度 
	int listsize;//当前分配的存储容量 
}SqList;
Status InitList_Sq(SqList &L)//构造一个空的顺序表 
{
	L.elem=new ElemType[MAXSIZE];//为顺序表分配一个大小为MAXSIZE的数组空间 
	if(!L.elem) exit(OVERFLOW);//存储失败 
	L.length=0;//空表长度为零 
	L.listsize=MAXSIZE;
	return OK;
}
Status ListTraverse(SqList L)//  初始条件:顺序线性表L已存在  
{
	ElemType *p;
	p=L.elem;
	int i;
	printf("线性表当前容量为:%d\n",L.listsize);
	if(L.length>0)
	{
		printf("当前线性表有%d个元素,分别是\n",L.length);
		for(i=1;i<=L.length;i++)
		{
			printf("%d ",*p++);
		}
	}
	else 
	{
		printf("目前还是空线性表.\n");
	}
}
int main()
{
	SqList la;
	InitList_Sq(la);
	ListTraverse(la);
}

Exit()
函数名: exit()
所在头文件 :stdlib.h
功 能: 关闭所有文件,终止正在执行的程序。
exit(1)表示异常退出.这个1是返回给操作系统的不过在DOS好像不需要这个返回值
exit(x)(x不为0)都表示异常退出
exit(0)表示正常退出
用 法: void exit(int status);
参 数 : status //程序退出的返回值.
程序例:
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
int main(void)
{
int status;
printf("Enter either 1 or 2\n");
status = getch();
/* Sets DOS errorlevel */
exit(status - '0');
/* Note: this line is never reached */
return 0;
}
exit()和return的区别:
按照ANSI C,在最初调用的main()中使用return和exit()的效果相同。
但要注意这里所说的是“最初调用”。如果main()在一个递归程序 中,exit()仍然会终止程序;但return将
控制权移交给递归的前一级,直到最初的那一级,此时return才会终止程序。return和exit()的另一个区别
在于,即使在除main()之外的函数中调用exit(),它也将终止程序。



本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数据结构-顺序表的初始化 的相关文章

  • Typedef 声明的形式为“int typedef my_int;”

    声明my int作为类型别名int我们可以写 typedef int my int 1 奇怪的是 以下似乎也定义了int alias int typedef my int 2 我以前从未见过这样的语法 为什么它有效 我读后的推理C 参考 h
  • C中的typedef结构问题

    我面临一个奇怪的问题 我在 C 头文件中定义了一个结构 typedef struct iRecActive char iRecSID 32 unsigned char RecStatus int curSel iRecAcitve t 但是
  • 在 cython 中使用 typedef'd 结构

    我在头文件 dcm h 中有以下定义 typedef struct double alpha double gamma double tau ThetaDCM 我想将它导入到 cython 中 所以我有 cdef extern from d
  • typedef 类型检查?

    如何让 g 对 typedef 进行类型检查 是否可以 IE typedef int T1 typedef int T2 T1 x 5 Ok with me T2 y x Any way to get an error or a warni
  • 【每日一题】2397. 被列覆盖的最多行数-2024.1.4

    题目 2397 被列覆盖的最多行数 给你一个下标从 0 开始 大小为 m x n 的二进制矩阵 matrix 另给你一个整数 numSelect 表示你必须从 matrix 中选择的 不同 列的数量 如果一行中所有的 1 都被你选中的列所覆
  • 206.翻转链表

    翻转链表 力扣 LeetCode 官网 全球极客挚爱的技术成长平台 备战技术面试 力扣提供海量技术面试资源 帮助你高效提升编程技能 轻松拿下世界 IT 名企 Dream Offer https leetcode cn problems re
  • 矩阵基本操作3

    题目描述 问题描述 定义一个N M N M lt 100 的矩阵 将一个该矩阵的行和列的元素互换 存到另一个二维数组中 输入格式 一行两个整数 N M 中间用空格隔开 表示矩阵有N行 M列 接下来共N行M列表示矩阵 输出格式 输出转置以后的
  • 最大流-Dinic算法,原理详解,四大优化,详细代码

    文章目录 零 前言 一 概念回顾 可略过 1 1流网络 1 2流 1 3最大流 1 4残留网络 1 5增广路
  • 函数原型 typedef 可以在函数定义中使用吗?

    我有一系列具有相同原型的函数 比如说 int func1 int a int b int func2 int a int b 现在 我想简化它们的定义和声明 当然我可以使用这样的宏 define SP FUNC name int name
  • typedef 和模板参数同名

    为什么这种情况不正确 这是合乎逻辑的 template
  • 当结构体开头的名称和结构体末尾的名称不同时,这意味着什么?

    当结构体开头的名称和结构体末尾的名称不同时 这意味着什么 例如 struct book char title 50 int year boo 或者例如 typedef struct book char title 50 int year b
  • 将自定义方法添加到 std::vector 或 typedef

    因此 我有以下代码 可以 搜索 向量中的对象字符串 include
  • `typedef struct foo {int bar};` 的合法性

    这个问题源于这个问题是一个结构体 类型还是未命名变量 https stackoverflow com questions 31877661 is a struct a type or an unnamed variable 在这个问题中 O
  • 关于C++类中typedef函数的疑问

    我需要定义一个返回类对象的函数 假设我有一个名为狗的类 h 中的类声明和 cpp 中的实现 当狗死时 我想调用一个函数让狗管理器知道这一点 在dog的SetFunc中我将收到要调用的函数 Dog h class Dog public typ
  • 如果没有“typedef”,如何创建在 C# 泛型中使用的相关类型组?

    作为一名 C 背景的人 我遇到过以下情况 鉴于 c 不支持 typedef 如何以编程方式关联类型 也就是说 在 C 中 我可以将相关类型存储为 typedef 以便在与模板一起使用时进行检索 在 C 中无法以同样的方式完成同样的事情 因为
  • C Typedef 和 struct 问题

    这两种声明有什么区别 哪种声明优先于另一种 typedef struct IOPORT GPIO TypeDef port u16 pin IOPORT typedef struct GPIO TypeDef port u16 pin IO
  • typedef 如何用于函数指针

    我想我可能患有可怕的 意外程序员 病 至少在 typedef 和函数指针方面是这样 因此 我一直在尝试涉及这些的各种组合 以根据我得到的所有输出来分析结果 但当我不断尝试不同的组合时 我现在没有分析结果 而是迷失在过程中 我希望你们能帮我解
  • 继承而不是 typedef

    C 无法从 typedef 中创建模板或将 typedef 制作为模板类 我知道如果我继承并使我的类成为模板 它就会起作用 例子 Illegal template
  • 是否允许将类模板类型参数键入相同的名称?

    这似乎可以在 MSVC 中按预期编译甚至工作 但它是合法的 C 代码吗 它是否能保证执行此处所期望的操作 即将模板类型导出到结构体的同名用户 template
  • 将 CFIndex 转换为 NSUInteger?

    我如何转换typedef signed long CFIndex to typedef unsigned int NSUInteger 如果我使用一个可以吗 CFIndex作为类型的参数NSUInteger 我还没有铸造它 编译者似乎也不介

随机推荐

  • 数据清洗遇到的问题思考

    因为本次任务是基础的数据预处理和数据集划分 所以本次讨论不涉及特征工程和模型相关的 问题一 缺失数据 有很多人问到了缺失值处理的问题 统一汇总提问 为什么需要处理缺失值 确实值会影响模型训练 某些特征值确实 有可能使得该条样本完全是负样本
  • VM6289:1 http://xxx.cn 不在以下 request 合法域名列表中,请参考文档:https://developers.weixin.qq.com/miniprogra

    本地测试时 点击微信开发工具右上角详情 然后勾选上 不校验合法域名
  • SpringSecurity学习笔记(十二)异常以及权限管理使用

    参考视频 异常 SS中的异常主要分为两种 AuthenticationException authenticationException 认证异常 AccessDeniedException accessDeniedException 授权
  • Django—模板层

    目录 常用语法 变量 模板语法之注释 模板语法之过滤器 常见的django过滤器 模板语法之标签 自定义过滤器 标签和inclusion tag 自定义过滤器 模板的继承 常用语法 变量相关 逻辑相关 模板语法传值支持python的所有基本
  • C#中把中文转换成对应的拼音码

    using System using System Data using System Configuration using System Web using System Web Security using System Web UI
  • ChatGPT生成的介绍Easy发票查验软件的文案!说到我的心坎里了!

    该软件是一款专为企业用户设计的发票处理工具 它拥有多种功能 包括发票图片矫正 发票识别 发票重命名 发票查验和发票打印等 可极大地提高企业的发票处理效率 首先 该软件的发票图片矫正功能可以自动调整图片的角度和大小 确保图片能够清晰地被识别
  • opencv与C++实现最大类间方差法(OTSU)进行图像二值化

    直接上代码 使用最大类间方差法进行二值化的函数 void threshold otsu Mat mat Mat mat thresh mat为输入图像 mat thresh为二值化后的输出图像 求出图像的最大和最小像素值 确定阈值区间 do
  • 单链表的链表拆分

    1 定义三的指针变量 p q t p指向原链表的头结点head1 新建另一个头结点head2 q指向head2 t指向head1的next结点 两个头结点的next都设为空 2 按照条件分配t指向的结点 如果将这个结点连接到head1的链表
  • jdbc-Mysql时间类型的存取

    通过jdbc向mysql存取时间类型的数据时 默认需要使用 java sql Date 但是这个时间一方面使用不方便 java中常用的是 java util Date 另一方面这个时间类型的数据没有时分秒毫秒等 想要解决这个问题目前有三种方
  • win11微软账户登录一直转圈怎么解决?win11微软账户登录一直转圈

    win11微软账户登录一直转圈怎么解决 最近有很多小伙伴们向小编反映说自己的微软账户登录的时候一直在转圈就是进不去 不知道是怎么一回事 就卡在登录界面上 那遇到这个问题应该怎么解决呢 还不清楚的小伙伴们不用担心 跟着小编一起来看看解决方法吧
  • 程序员一年中最佳跳槽时间是什么时候?

    说到跳槽 在职场的初期阶段 这种诉求尤为强烈 要么因为可以多拿一些工资 要么感觉受到了委屈 于是轻易就跳槽了 但随着职场经历的增加会发现 我们无论在哪里都有比现在更高的工资 无论在哪里都会遇到类似的问题 所以 仅仅因为自我感觉受挫或受委屈了
  • React学习笔记(基础篇)

    React学习笔记 基础 本文主要依据react官网的学习脉络 记录自己的学习过程 同时添加了个人见解 如有理解不妥的地方欢迎评论 1 React介绍 react由facebook公司推出 因为该公司不满足于市面上现有的前端框架 他们认为M
  • ElasticSearch第十七讲 ES索引别名的使用

    索引别名 ES中可以为索引添加别名 一个别名可以指向到多个索引中 同时在添加别名时可以设置筛选条件 指向一个索引的部分数据 实现在关系数据库汇总的视图功能 这就是ES中别名的强大之处 别名是一个非常实用的功能 为我们使用索引提供了极大的灵活
  • 若依框架:前端项目结构与初始页面渲染流程

    目录 main js入口文件 前端页面初始化 package json配置文件 vue cli env模式和环境变量配置 vue cli三大核心构件 CLI 服务与npm scripts vue cli service命令与 env模式配置
  • 区块链技术介绍PPT

    https download csdn net download yzpbright 10818673 参考 终于把区块链的技术与应用讲清楚了 57 张 PPT 2018区块链整体架构及应用 PPT全文 比特币原理 现场视频 字幕 演讲全文
  • 使用client-go mod报错

    报错信息 E github client go gt go mod tidy go finding module for package k8s io client go kubernetes go finding module for p
  • 10人俩月搞出大模型!一年16篇顶会论文加持:市面上做得好的都没有开源

    衡宇 发自 凹非寺量子位 公众号 QbitAI 一家今年5月份成立在深圳的公司 团队至今不到10人 他们要做的却不是小事 挑战AGI 底气在哪 一看过往履历 二看现在赛道的成绩 这几个人近一年中 累计在CVPR ICML ECCV等顶会上发
  • hdfs 多次格式化报错

    报错 20 04 29 19 46 32 WARN namenode NameNode Encountered exception during format org apache hadoop hdfs qjournal client Q
  • 小乌龟克隆项目报错:Disconnected: No supported authentication methods available(server sent: publickey)

    在拉取项目的时候 发现有些项目就是拉取不下来 还报错 Disconnected No supported authentication methods available server sent publickey fatal Could
  • 数据结构-顺序表的初始化

    顺序表的初始化 include