栈中元素个数问题假设一个长度为50的数组(数组元素的下标从0到49)作为栈的存储空间,栈底指针bottom指向栈底元素,
来源:学生作业帮 编辑:神马作文网作业帮 分类:数学作业 时间:2024/11/20 02:18:47
栈中元素个数问题
假设一个长度为50的数组(数组元素的下标从0到49)作为栈的存储空间,栈底指针bottom指向栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有________个元素.
我认为是:49-30+1=20个.
但是为什么在计算机二级考试中标答却是19?
假设一个长度为50的数组(数组元素的下标从0到49)作为栈的存储空间,栈底指针bottom指向栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有________个元素.
我认为是:49-30+1=20个.
但是为什么在计算机二级考试中标答却是19?
这个栈有意思,一般都是
栈底指针为0.然后++top,压栈,这个则是--top;
bottom-top+1为栈中元素个数,
49-30+1=20,是对的,如果
bottom=49,top=49,很明显栈中
49-49+1=1个元素.
这种题目其实没什么意思,它没有说清,如果是19个也可以说明白,就是说它栈顶指针指向的是一个没有存储位置,就是时候实现的时候,是top++,当然也可以指向栈顶元素.那就是++top,哎这种题目其实对理解数据结构也没啥帮助,如果就像题目中出的栈底指向栈底元素,栈顶指向的就是已经存储的栈顶的元素,那就是20个,19的意思是说,栈顶指针指向的是一个还没有存储位置.
栈底指针为0.然后++top,压栈,这个则是--top;
bottom-top+1为栈中元素个数,
49-30+1=20,是对的,如果
bottom=49,top=49,很明显栈中
49-49+1=1个元素.
这种题目其实没什么意思,它没有说清,如果是19个也可以说明白,就是说它栈顶指针指向的是一个没有存储位置,就是时候实现的时候,是top++,当然也可以指向栈顶元素.那就是++top,哎这种题目其实对理解数据结构也没啥帮助,如果就像题目中出的栈底指向栈底元素,栈顶指向的就是已经存储的栈顶的元素,那就是20个,19的意思是说,栈顶指针指向的是一个还没有存储位置.
用c语言编写:从键盘输入10个数存入数组a中,统计数组下标是奇数且数组元素值为偶数的元素个数
C语言中数组元素的指针表示的问题
定义一个长度为20的整型数组,并初始示数组中的所有元素,每行5个元素,并求最大值及其下标,最小值及其下标,平均值
整型一维数组中存放互不相同的10个数,从键盘输入一个整数,输出与该数相同的数组元素的下标
一个函数指针数组p[],数组p共有4个元素,其元素指向返回double型值的函数.其定义形式正确的为
一个函数指针数组p[],数组p共有4个元素,其元素指向返回double型值的函数.其定义形式正确为
设循环列队中数组的下标是1~n.其头尾指针分别为f,r,则队列中元素个数为?
C语言中若定义数组和指向数组的指针,其中元素的地址可用哪几种方式表达?
定义一个指针变量,使它指向数组的第一个元素?怎么实现?
Matlab中怎么返回一个数组中元素的个数
找出数组中最大的元素的下标.
matlab 数组中求n个元素的下标,