若用数组S[0..n-1]作为两个栈S1和S2的共同存储结构,对任何一个栈,只有当S全满时才不能作入栈操作。为这两个栈分配空间的最佳方案是()。A、S1的栈底位置为0,S2的栈底位置为n-1B、S1的栈底位置为0,S2的栈底位置为n/2-1C、S1的栈底位置为1,S2的栈底位置为nD、S1的栈底位置为1,S2的栈底位置为n/2
若用数组S[0..n-1]作为两个栈S1和S2的共同存储结构,对任何一个栈,只有当S全满时才不能作入栈操作。为这两个栈分配空间的最佳方案是()。
- A、S1的栈底位置为0,S2的栈底位置为n-1
- B、S1的栈底位置为0,S2的栈底位置为n/2-1
- C、S1的栈底位置为1,S2的栈底位置为n
- D、S1的栈底位置为1,S2的栈底位置为n/2
相关考题:
●设有一个顺序栈S,元素s1,s2,s3,s4,s5,s6依次进栈,如果6个元素的出栈顺序为s2,s3,s4,s6,s5,s1,则顺序栈的容量至少应为 (35) 。(35) A.2B.3C.4D.5
若已包含头文件stdio.h且有说明chars1[5],s2[7];要给s1,s2赋值,下列语句中正确的是() A、s1=getchar();s2=getchar();B、scanf(“%s%s”,s1,s2);C、scanf(“%c%c”,s1,s2);D、gets(s1);s2=s1;
进程P1、P2、P3和P4的前趋图如下:若用PV操作控制这几个进程并发执行的过程,则需要设置4个信号量s1、s2、S3和s4,且信号量初值都等于零。下图中a和b应分别填写( ),c和d应分别填写( )。A.P(S1)P(S2)和P(s3)B.P(s1)P(s2)和V(s1)C.V(S1)V(s2)和P(S1)D.V(S1)V(S2)和V(S3)
若有以下说明:chars1[]={"tree"},s2[]={"flower"};,则以下对数组元素或数组的输出语句中,正确的是()。A.printf("%s%s",s1[5],s2[7]);B.printf("%c%c",s1,s2);C.puts(s1);puts(s2);D.puts(s1,s2);
s1和s2已正确定义并分别指向两个字符串。若要求:当s1所指串大于s2所指串时,执行语句S。则以下选项中正确的是______。A.if (s1>s2)S;B.if(strcmp(s1, s2))S;C.if(strcmp(s2, s1)>0)S;D.if(strcmp(s1, s2)>0)S;
一个栈(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,栈元素的数据类型为整数。根据题意,画出栈对象的状态迁移图;
阅读以下函数: fun(char*s1, char*s2) { int i=0; while(s1[i]==s2[i] s2[i]!='\0') i++; return(s1[i]== s2{i)!=='\0'); } 此函数的功能是( )。A.将s2所指字符串赋给s1B.比较s1和s2所指字符串的大小,若s1比s2的大,函数值为1,否则函数值为0C.比较s1和s2所指字符串是否相等,若相等,函数值为1,否则函数值为0D.比较s1和s2所指字符串的长度,若s1比s2的长,函数值为1,否则函数值为0
进程P1、P2、P3和P4的前趋图如下所示:若用PV操作控制进程P1~P4并发执行的过程,则需要设置5个信号量S1、S2、S3、S4和S5,且信号量S4-S5的初值都等于0。下图中a、b和c处应分别填写①;d、e和f处应分别填写②。A.V(S1)V(S2)、P(S1)V(S3)和V(S4)B.P(S1)V(S2)、P(S1)P(S2)和V(S1)C.V(S1)V(S2)、P(S1)P(S3)和V(S4)D.P(S1)P(S2)、V(S1)P(S3)和V(S2)
设用数组A[1,n]作为两个栈S1、S2的共用存储空间,对任一个栈,只有当数组A[1,n]全满时才不作入栈操作,则分配这两个栈空间的最佳方案是()。A.S1的栈底位置设为1,S2的栈底位置设为nB.S1的栈底位置设为n/2,S2的栈底位置设为n/2+1C.S1的栈底位置设为1,S2的栈底位置设为n/2D.S1的栈底位置设为n/2,S2的栈底位置设为1
设数组S[n]作为两个栈S1和S2的存储空间,对任何一个栈只有当S[n]全满时才不能进行进栈操作。为这两个栈分配空间的最佳方案是()。A、S1的栈底位置为0,S2的栈底位置为n-1B、S1的栈底位置为0,S2的栈底位置为n/2C、S1的栈底位置为0,S2的栈底位置为nD、S1的栈底位置为0,S2的栈底位置为1
设char *s1, *s2;分别指向两个字符串,可以判断字符串s1和s2是否相等的表达式为()A、s1=s2B、s1==s2C、strcpy(s1,s2)==0D、strcmp(s1,s2)==0
单选题设有以下定义:char s1[]=0123;char s2[]={'0','1','2','3'};则以下叙述正确的是( )。A数组s1的长度小于s2的长度B数组s1和s2的长度相同C数组s1的长度大于s2的长度D数组s1和s2完全等价
单选题若用数组S[0..n-1]作为两个栈S1和S2的共同存储结构,对任何一个栈,只有当S全满时才不能作入栈操作。为这两个栈分配空间的最佳方案是()。AS1的栈底位置为0,S2的栈底位置为n-1BS1的栈底位置为0,S2的栈底位置为n/2-1CS1的栈底位置为1,S2的栈底位置为nDS1的栈底位置为1,S2的栈底位置为n/2
单选题设数组S[n]作为两个栈S1和S2的存储空间,对任何一个栈只有当S[n]全满时才不能进行进栈操作。为这两个栈分配空间的最佳方案是()。AS1的栈底位置为0,S2的栈底位置为n-1BS1的栈底位置为0,S2的栈底位置为n/2CS1的栈底位置为0,S2的栈底位置为nDS1的栈底位置为0,S2的栈底位置为1