2、经过以下运算后, x的值是 _______。 InitStack (s); Push(s, 'a'); Push(s, 'b'); Pop(s, x); GetTop(s,x)
A.a
B.b
C.1
D.0
第1题:
阅读下列程序,并给出运行结果
SET,FALK OFF
CLEAR
STORE 0 T0 X,Y,S1,S2,S3
D0 WHILE X<1O
X=X +l
DO CASE
CASE INT(X/2)=X/2
S1:SI+X/2
CASE MOD(XJ 3)=0
S2=S2+X/3
CASE INT(X/2)<>X/2
S3=S3+1
ENDCASE
ENDDO
?S1,S2,S3
SET TALK 0N
RETURN
运行以上程序后,屏幕显示【 】。
第2题:
经过下列栈的操作后,GetTop(ST)的值是()。InitStack(ST);push(ST,'a');push(ST,'b');pop(ST,x);
A、A
B、B
C、1
D、2
第3题:
AlnitStack(S)
BPush(S,X)
CPop(S)
Dempty(S)
第4题:
一个栈(Stack)对象有三种状态:S1——栈空;S2——栈非空也非满;S3——栈满。则各个状态的条件如下:
S1:(t0)创建栈对象时初始化,这是系统做的
(t1)在S2状态下执行置空运算setEmpty()
(t2)在S3状态下执行置空运算setEmpty()
(t3)在S2状态下执行出栈运算Pop()
S2:(t4)在S1状态下执行进栈运算Push()
(t5)在S3状态下执行出栈运算Pop()
S3:(t6)在S2状态下执行进栈运算Push()
为简化问题,假设栈Stack的容量为2,栈元素的数据类型为整数。
根据题意,画出栈对象的状态迁移图;
第5题:
【程序】
SET TALK OFF
CLEAR
STORE 0 TO X,S1,S2,S3
DO WHILE X<15
X=X+1
DO CASE
CASEINT(X/2)=X/2
S1=S1+X/2
CASE MOD(X,3)=0
S2=S2+X/3
CASE INT(X/2)<>X/2
S3=S3+1
ENDCASE
ENDDO
? X,S1,S2,S3
SET TALK ON
RETURN
X的输出结果为 ______。
A.0
B.14
C.15
D.16
第6题:
有如下程序: #include <iostream> using namespace std; class Stack { public: Stack(unsigned n= 10):size(n) {rep_=ew int[size]; top=0;} Stack(Stack& s):size(s.size) { rep_=new int[size]; for(int i=0;i<size;i++) rep_[i]=s.rep_[i]; top=s.top; } ~Stack() {delete[]rep_;} void push(int a) {rep_[top]=a; top++;} int pop() {--top;return rep_[top];} bool isEmpty() const {return top==0;} private: int *rep_; unsigned size,top; }; int main() { Stack s1; for(int i= 1;i<5 ;i++) s1. push(i); Stack s2(s1); for(i= 1 ;i<3;i++) cout<<s2.pop()<<','; s2.push(6); si.push(7); while(!s2.isEmpty()) cout<<s2.pop()<<','; return 0; }执行上面程序的输出是______ 。
A.4,3,2,1,
B.4,3,6,7,2,1,
C.4,3,6,2,1,
D.1,2,3,4,
第7题:
有如下程序: #include <iostream.h> using namespace std; class Stack { public: Stack(unsigned n=10):size(n){rep_=new int [size]; top=0;} Stack(Stack&s): size (s.size) { rep_=new int[size]; for (int i=0;i<size;i++) rep_[i]=s.rep_[i]; top=s.top; } ~Stack(){delete[]rep_;} void push(int a){rep_[top]=a; top++;} int pop(){--top; return rep_[top];} bool isEmpty() const {return top ==0;} private: int*rep_; unsigned size, top; }; int main() { Stack s1; for(int i=1;i<5;i++) sl.push(i); Stack s2(s1); for (int i=1;i<3;i++) cout<<s2.pop()<<','; s2.push(6); s1.push(7); while(!s2.isEmpty()) cout<<s2.pop()<<','; return 0; } 执行上面程序将输出( )。
A.4,3,2,1,
B.4,3,6,7,2,1,
C.4,3,6,2,1,
D.1,2,3,4,
第8题:
设输入元素的顺序为1,2,3,4,5,要在栈S的输出端得到序列4.3.5.2.1,则进行的操作用栈的基本运算表示应为push(S,1),push(S,2),push(S,3),push(S,4),pop(S),(),pop(S),pop(S),pop(S)。
第9题:
设输入元素的顺序为1、2、3、4、5,要在栈S的输出端得到43521,则应进行栈的基本运算表示应为:push(S,1),push(S,2),push(S,3),push(S,4),pop(S),(),pop(S),pop(S),pop(S)。
第10题:
经过下列栈的运算后EmptyStack(s)的值是() InitStack(s);Push(s,a);Push(s,b);Pop(s,x);Pop(s,x) ;
第11题:
5,4,3,2,1
2,1
2,3
3,4
第12题:
第13题:
若x(t)的拉普拉斯变换为X(s),且各阶导数(含零阶)的初始值均为零,则x(t)的一阶导数的拉普拉斯变换为()。
A、X(s)
B、S2X(s)
C、sX(s)
D、S3X(s)
第14题:
此题为判断题(对,错)。
第15题:
设s="Visual Basic Programming",则以下使变量x的值为“Basic”的语句是
A.x=Left(s,6)
B.x=Mid(s,6)
C.x=Right(s,6)
D.x=Mid(s,8,6)
第16题:
下列程序执行后,变量S的值为 Dim s As Long,x As Integer s=0 For x=1 To 10 Step 2 s=s+x Next x Text1.Text=s
A.10
B.25
C.50
D.100
第17题:
下列程序执行后,变量S的值为______ 。 Dim s As Long,X As Integer s=0 X=1 Do While x<10 s= s+ x x=x+2 Loop Print s
A. 10
B.25
C.50
D.100
第18题:
堆栈s进行下列操作:push(1);push(2);pop();pop();后,此时的栈顶元素为( )。
A.1
B.2
C.0
D.不确定
第19题:
第20题:
设栈S的初始状态为空,现有五个元素组成的序列1,2,3,4,5,对该序列在栈S上依次进行PUSH,PUSH,POP,PUSH,POP,PUSH,PUSH操作,出栈的元素序列是()。
第21题:
设元素1,2,3,4,5依次进栈,若要在输出端得到序列34251。则应进行的操作序列为push(S,1); push(S,2);(); pop(S); push(S,4); pop(S);(); (); pop(S); pop(S)。
第22题:
第23题:
第24题:
a
b
1
0