#ZMOJ0002. 阶段性测试2-选择题

阶段性测试2-选择题

​1.​下面的程序段的运行结果为( )

char str[ ] = "job", *p = str;

cout << *(p+2) << endl;

{{ select(1) }}

  • 98
  • 无输出结果
  • 字符'b'的地址
  • 字符'b'

​2.​二进制数1101111转换为十六进制是( )

{{ select(2) }}

  • 157
  • 111
  • 6f
  • 3f

​3.​下列指针的用法中,不正确的一项是( )

{{ select(3) }}

  • int i; int *p=&i;
  • int i; int *p; i=*p;
  • int *p; p=0;
  • int i=5; int *p; p=&i;

​4.​定义char a; float b; double c; 执行语句 c=a+b+c 后c的变量类型是( )

{{ select(4) }}

  • char
  • float
  • double
  • int

​5.​​栈的插入、删除操作在( ​)进行。

{{ select(5) }}

  • 任意位置
  • 指定位置
  • 栈顶
  • 栈底

​6.​元素A​、​​​B​、​​​C​、​D​​依次进栈以后,栈顶元素是( ​)

{{ select(6) }}

  • A
  • B
  • C
  • D

​7.带头结点的链栈LS的示意图如下,栈顶元素是( )

image

{{ select(7) }}

  • A
  • B
  • C
  • D

​8.​4个元素按A​、​B​、C​、​D顺序进S栈,执行两次​pop(​​S​,​​​x)运算后栈顶元素的值是(​ )

{{ select(8) }}

  • A
  • B
  • C
  • D

​9.​设有编号为​1,2,3,4的4辆列车,顺序进入一个栈结构的站台,下列不可能的出站顺序为( )

{{ select(9) }}

  • 1234
  • 1243
  • 1324
  • 1423

10.​一个栈的入栈次序​​A​、​B​、​C、​D​、E,则栈不可能的输出序列是(​ )

{{ select(10) }}

  • EDCBA
  • DECBA
  • DCEAB
  • ABCDE

11.​从一个栈顶指针为top的链栈中删除一个结点时,用​x保存被删除结点的数据元素​,应执行下列(​ ​)​命令

{{ select(11) }}

  • x=top; top=top->next;
  • top=top->next; x=top->data;
  • x=top->data;
  • x=top->data; top=top->next;

12.​已知一个栈的进栈序列为p1,p2,p3,…....,pn,其输出序列是1,2,3,……,n。若pn=1,则pi的值是( )

{{ select(12) }}

  • i
  • n-i
  • n-i+1
  • 不确定

13.​以下关于栈和队列的说法中,正确的是( )

{{ select(13) }}

  • 栈和队列都是后进先出的线性表
  • 栈和队列都是先进先出的线性表
  • 栈是在表尾插入和删除元素,队列是在表头删除元素、在表尾插入元素
  • 栈是在表尾插入和删除元素,队列是在表头插入和删除元素

14.​若用一个大小为6的数组来实现循环队列,front指示队头元素位置,rear指示队尾元素之后的位置,front的当前值为3,rear的当前值为0,那么从队列中删除一个元素再加入两个元素后,front和rear的值分别为( )

{{ select(14) }}

  • 1和5
  • 5和1
  • 2和4
  • 4和2

15.采用顺序存储结构的栈S和队列Q的初始状态都为空,元素a、b、c、d、e、f依次进入队列Q,Q中的每个元素出队列后立刻进入栈S,如果出栈序列是b、c、d、f、e、a,则栈S的容量应不少于( )

{{ select(15) }}

  • 2
  • 3
  • 4
  • 5