C语言栈和队列或者链表之类的数据结构中可以存放不同类型的数据吗?如一个int型,另一个是char又一个bool

作者&投稿:氐珍 (若有异议请与网页底部的电邮联系)
C语言中链表与队列有很么区别?~

楼主你好。
链表是一种数据结构,而队列是一种抽象的概念,就像栈一样。
船是一个比较抽象的概念,具体实现有木船、铁船等等。队列好比是船,链表好比是造船的材料。
队列可以用链表实现,也可以用动态数组实现,这个抽象的概念可以用各种具体的数据结构实现。
SQQUEUE的第一个元素elemtype *elem;其实是指向了一个数组,该数组中存储着类型为elemtype的元素,然后front和rear就标识了队首和队尾元素对应的数组下标。

typedef struct _Point{
int x,y;
}Point;
#define elemtype Point//这个elemtype可以是任意你自己定义的结构,可以是结构体,也可以是简单数据类型
elemtype array[10]={0};//这个是队列的数据结构,在这里是一个Point数组
SQQUEUE queue={0};
queue.elem=array;//这样array中的元素就是queue中的元素了。
queue.front=queue.rear=queue.size=0;

你说的next指针是链表节点中的成员。你想想链表和链表节点间的区别。
typedef struct _ListNode{//这是链表节点
int x,y;//这是存储的数据
struct _ListNode *next;
}ListNode;
typedef struct _List{//这是链表,这里并不存储next
ListNode* front,rear;
}List;
如果还不懂,可以追问我。

数据元素相互之间的关系称为结构。有四类基本结构:集合、线性结构、树形结构、图状结构;

对于栈 、队列、链表,你可以声明不同类型的它们,比如声明一个整型栈,那该栈就只能存放整型数据。你声明什么类型的数据结构,就只能存放什么类型的数据。
对,elemtype实际上就是任意类型的意思,当你实际操作时,需要将其换成自己要用的类型。

具体到int, char, bool,是可以的,因为很巧,这三者都可以用整数值来表示,其他的(double, float之类的)就不行了。

typedef int elemType;

之后直接用elemType就行了。相当于重命名。

你可以用联合体来做数据类型,,,不过这相当麻烦
union data
{
int a;
float b;
char c;
};
struct Data
{
data m_data;
int type;
Data *next;
}
用这个作链表的结点 ,然后每个结点通过type判断存放的数据类型

不可以

9月份全国计算机等级考试二级c语言 备考计划 重点相关注意事项?_百度...
答:4.栈和队列的定义;栈和队列的顺序存储结构及其基本运算。5.线性单链表、双向链表与循环链表的结构及其基本运算。6.树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。7.顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。二、程序设计基础 1.程序...

c语言都考什么啊?
答:4.栈和队列的定义;栈和队列的顺序存储结构及其基本运算。5.线性单链表、双向链表与循环链表的结构及其基本运算。6.树的基本概念;二叉树的定义及其存储结构、二叉树的前序、中序和后序遍历。7.顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。(二)程序设计基础 1....

C语言二级考试循环链表是循环队列的链式存储结构
答:循环队列本身是一种顺序存储结构,而循环列表是一种链式存储结构。两者之间是平级关系。线性链表是线性表的链式存储结构,包括单链表,双链表,循环链表等。队列的顺序存储结构一般采用循环队列的形式。循环队列的操作是按数组取摸运算的,所以是顺序存储,而循环链表本身就是收尾相连的,所以循环链表不是循环...

数据元素是数据的最小单位
答:1.数组:数据元素在数组中按照一定的顺序排列,可以通过索引或者下标来访问和操作。2.链表:数据元素在链表中通过指针连接起来,可以通过遍历链表来访问和操作。3.栈和队列:数据元素在栈和队列中遵循特定的添加和删除规则,可以实现后进先出(LIFO)或者先进先出(FIFO)的操作。4.树和图:数据元素在树...

数据结构C语言版的图书目录
答:4.4算法的存储空间需求17第2章线性表182.1线性表的类型定义182.2线性表的顺序表示和实现212.3线性表的链式表示和实现272.3.1线性链表272.3.2循环链表352.3.3双向链表352.4一元多项式的表示及相加39第3章栈和队列443.1栈443.1.1抽象数据类型栈的定义443.1.2栈的表示和实现453.2栈的应用举例...

计算机二级c语言考些什么?
答:4. 栈和队列的定义;栈和队列的顺序存储结构及其基本运算。5. 线性单链表、双向链表与循环链表的结构及其基本运算。6. 树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。(前序、中序和后序遍历有考到,每年都有)7. 顺序查找与二分法查找算法;基本排序算法(交换类排序,...

请问大家哈,知道计算机C语言都考些什么吗,谢谢哈,马上就开始考试了...
答:4. 栈和队列的定义;栈和队列的顺序存储结构及其基本运算。5. 线性单链表、双向链表与循环链表的结构及其基本运算。6. 树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。7. 顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。二、 程序设计基础 ...

数据结构的一个问题:在学链表或者栈和队列的时候,那些实现操作的东西...
答:是的,自己定义实现的数据类型应该放在一个头文件里,用到的时候进行文件包含。有很多数据类型,比如你说的那些,有些类库都已经定义好了,你可以直接使用。当然也可以自己定义。

C语言这个程序怎么设计
答:4.栈和队列的定义;栈和队列的顺序存储结构及其基本运算。5.线性单链表、双向链表与循环链表的结构及其基本运算。6.树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。7.顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。二、程序设计基础 1.程序...

如何文艺的学习数据结构?
答:如果硬要从文艺的角度出发,那我劝你两字真理,“坚持”。下面假装从文艺角度告诉你学习方式:1.熟悉数据结构整个大纲,做到心里有数。2.弄清楚数据结构中的基本概念,掌握大纲中的每个具体章节内容(例:线性表、栈和队列,串、数组和广义表、树与森林、图等等)。3.最重要也是最核心的就是坚持,可能...