执行下列C++语句:int x[5], *p = x; p += 2; 则指针变量p指向数组x的哪个元素?()
A.x[0]
B.x[1]
C.x[2]
D.x[3]
A.x[0]
B.x[1]
C.x[2]
D.x[3]
第1题
A、int x[5], p = x[0];
B、int x[5], *p = x;
C、int x[5], *p = &x[0];
D、int x[5], *p = &x[2]-2;
第2题
A、float x[100]; float *p=x;
B、float x[100]; int *p=x;
C、float x[100]; int *p=&x;
D、float x[100]; float *p=&x;
第3题
A.x是一个指向具有3个元素的整型数组的指针
B.x是一个指向int型变量的指针
C.x是一个有3个元素的指针数组,每个元素是一个int型指针
D.x是一个数组,该数组的元素是指针x所指向的变量
第4题
(1)定义类stack的私有数据成员sp和size,它们分别为整型的指针和变量,其中sP指向存放栈的数据元素的数组,size为栈中存放最后一个元素的下标值。请在注释“//**1**”之后添加适当的语句。
(2)完成类stack的构造函数,该函数首先从动态存储空间分配含有100个元素的int型数组,并把该数组的首元素地址赋给指针sp,然后将该数组的所有元素赋值为0,并将size赋值为-1(size等于-1表示栈为空)。请在注释“//**2**”之后添加适当的语句。
(3)完成类stack的成员函数push的定义。该函数将传入的整型参数x压入栈中,即在size小于数组的最大下标情况下, size自加1,再给x赋值。请在注释“//**3**”之后添加适当的语句。
(4)完成类stack的成员函数pop的定义,该函数返回栈顶元素的值,即在size不等于-1的情况下,返回数组中下标为size的元素的值,并将size减1。请在注释“//**4**”之后添加适当的语句。
程序输出结果如下:
the top elem:1
the pop elem:1
the stack is empty
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
源程序文件test34_3.cpp清单如下:
include<iostream.h>
class stack
{
//** 1 **
public:
stack ( );
bool empty(){return size==-1;}
bool full() {return size==99;}
void push(int x);
void pop();
void top();
};
stack::stack()
{
//** 2 **
for(int i=0; i<100; i++)
*(sp+i)=0;
size=-1;
}
void stack::push(int x)
{
//** 3 **
cout<<"the stack is full"<<end1;
else
{
size++;
*(sp+size) = x;
}
}
void stack::pop()
{
//** 4 **
cout<<"the stack is empty"<<end1;
else
{
cout<<"the pop elem:"<<*(sp+size)<<end1;
size--;
}
}
void stack::top()
{
if iempty() )
cout<<"the stack is empty"<<end1;
else
{
cout<<"the top elem:"<<*(sp+size)<<end1;
}
}
void main ( )
{
stack s;
s.push(1);
s.top();
s.pop();
s.top();
}
第6题
A、int, 2.5
B、int, 2
C、double, 2.0
D、double, 2.5
第7题
A、int, 2.5
B、int, 2
C、double, 2.0
D、double, 2.5
第8题
A、5, 0
B、0, 5
C、5, 10
D、0, 10
第9题
A、5, 0
B、0, 5
C、5, 10
D、0, 10
第10题
A、5, 0
B、0, 5
C、5, 10
D、0, 10
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!