编译原理

文法G://S→xSx|y所识别的语言是()A、xyxB、(xyx)*C、xnyxn(n≥0)D、x*yx*

题目

文法G://S→xSx|y所识别的语言是()

  • A、xyx
  • B、(xyx)*
  • C、xnyxn(n≥0)
  • D、x*yx*
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

文法(Sd(T)db)所描述的语言是______。

A.(xyx)n

B.xyxn

C.xynx

D.xnyxn


正确答案:D

第2题:

文法G[S]:S→xSx|y所描述的语言是______(n≥0)。

A.(xyx)n

B.xyxn

C.xynx

D.xnyxn


正确答案:D
解析:正规文法到正规式的转换规则如下:
 
  在本题中,推导过程如下:
  S->xSx->xyx->x2Sx2->x2yx2->
  x3Sx3->x3yx3->...->xnSxn->xnyxn
  得出生成式的规律是:两个x串中间只有一个y,同时两边的x串等长。

第3题:

设有关键码序为(Q,G,M,Z,A,N,B,P,X,H,Y,S,T,L,K,E),采用二路归并排序法进行排序,下面哪一个序列是第二趟归并后的结果?

A.G,Q,M,Z,A,N,B,P,H,X,S,Y,L,T,E,K

B.G,M,Q,Z,A,B,N,P,H,S,X,Y,E,K,L,T

C.G,M,Q,A,N,B,P,X,H,Y,S,T,L,K,E,Z

D.A,B,G,M,N,P,Q,Z,E,H,K,L,S,T,X,Y


正确答案:B

第4题:

阅读下列函数说明和C代码,填入(n)处。

[说明]

以下C语言程序实现了生成从里到外是连续的自然数排列的回旋矩阵,矩阵形式如下:

7 6 5 16

8 1 4 15

9 2 3 14

10 11 12 13

程序的变量说明如下:

x1:矩阵上边界;

x2:矩阵下边界;

y1:矩阵左边界;

y2:矩阵右边界;

s:数组元素升降标记,s等于1为升,s等于-1为降;

a[]:存放矩阵元素的数组。

仔细阅读C语言程序源码,将(n)处的语句补充完整。(注:每处仅一个语句)

[C程序]

include<stdio.h>

void main ( )

{

const int N=20;

int i=0,j=0,a[N][N],n;

int m,x1,x2,y1,y2,s;

while (1)

{

Printf ("\ninput matrix row N( N>=2): ");

scanf ("%d",&n);

printf ("\n");

if (n>=2)

break;

}

m=n*n;

x1=0; y1=0; x2=n; y2=n;

if(n%2==0)

{j=n-1; y2=n-1; s=1;}

else

{i=n-1; y1=1; s=-1; }

while (1)

{

if (s==1)

{

for (i; i<x2; i++) a[i][j]=m--;

i--;

j--;

(1)

for (j;j>=y1;j--) a[i][j]=m--;

j++;

i--;

y1++;

(2)

}

else

{

for (i;i>=x1;i--)

a[i][j]=m--;

i++;

j++;

(3)

for (j;j<y2;j++)

(4)

(5)

i++;

(6)

S=i;

}

if (m<1) break;

}

for (i=O;i<n; i++)

{

for (j=O;j<n;j++)

printf ("%6d",a[i][j]);

printf ("\n");

}

printf ("\n");

}


正确答案:(1)x2--; (2)s=-1; (3)x1++; (4)a[i][j]=m--; (5)j--; (6)y2--;
(1)x2--; (2)s=-1; (3)x1++; (4)a[i][j]=m--; (5)j--; (6)y2--; 解析:自然数排列的回旋矩阵是一个经典程序设计题目。本题中生成的是一个从里到外是连续的自然数排列的回旋矩阵。仔细阅读代码,能够发现(1)处应该为矩阵下边界递减;(2)处应该为数组元素递减状态,即为降;(3)处应该为矩阵上边界递增;(4)处应该为存放矩阵元素的数组中的数据递减;(5)处应该为数组元素的列序号递减,即j--;(6)矩阵右边界递减。

第5题:

考虑下述文法,S为开始符号 G1[S]:S→A A→aAb | ab G2[S] S→AA→aA |a| 下列结论中为真的是(28)。

A.G1是LR(0)文法,G2不是LR(1)文法

B.G2是LR(0)文法,G1不是LR(1)文法

C.G2是LR(1)文法,G1不是LR(1)文法

D.G1和G2都是LR(1)文法


正确答案:A
解析:因为G2存在句子aa,该句子有两棵不同的语法树,所以文法G2是二义性文法。二义性文法不是LR文法,所以B、C、D不正确。选A。

第6题:

设有关键码序列(Q, G, M, Z, A, N, B, P, X, H, Y, S, T, L, K, E),采用二路归并排序法进行排序,下面哪一个序列是第二趟归并后的结果?( )

A) G, Q, M, Z, A, N, B, P, H, X, S, Y, L, T, B, K

B) G, M, Q, Z, A, B, N, P, H, S, X, Y, E, K, L, T

C) G, M, Q, A, N, B, P, X, H, Y, S, T, L, K, E, Z

D) A, B, G, M, N, P, Q, Z, E, H, K, L, S, T, X, Y

A.

B.

C.

D.


正确答案:B

第7题:

已知文法G定义为:S→WZ,W→X|Y,X→x|xX,Y→y|yY,Z→z|zZ,与该文法描述相同语言的正规表达式是哪个()。

A.xx*|yy*|zz*

B.(xx*|yy*)zz*

C.xx*(yy*|zz*)

D.(xx|yy)*zz*


正确答案:B

第8题:

文法G[S]:S→xSx|y所描述的语言是()(n0)。

A.不能延伸网络可操作的距离

B.不能过滤网络流量

C.不能在网络上发送变弱的信号

D.不能放大变弱的信号


参考答案:B

第9题:

已知文法 G:S→WZW→X|YX→a|aXY→b|bYZ→c|cZ,G 定义的语言的相应正规式为() 。

A.aa*|bb*|cc*

B.(aa*|bb*)cc*

C.aa*(bb*|cc*)

D.(a|b|c)*


正确答案:B

第10题:

已知文法G2=(VT={a,b},VN={S,A},S,P),其中P为, S→Sb|Ab A→aSb|ε 该文法生成的语言是(28)。

A.{ambn|n>m≥0}

B.{ambn|m>n≥0}

C.{ambn|n≥m≥1}

D.{ambn|m≥n≥1}


正确答案:A
解析:根据文法G2的产生式A→aSb|ε,用A的产生式推导出终结符号串,如果仅用A→ε,则产生{ε};如果先用若干次A→aSb推导,再用A→ε,则推导过程如下:因此,由A生成的终结符号集合是{ambm|m>0}。从S出发使用产生式S→Sb|Ab进行推导,或者。最后,L(G2)={ambm|m0}连接{bk|k>0}={ambm+k|m+k>m0}={ambn|n>m0}。

更多相关问题