文法G://S→xSx|y所识别的语言是()
第1题:
文法G[S]:S→xSx|y所描述的语言是______(n≥0)。
A.(xyx)n
B.xyxn
C.xynx
D.xnyxn
第2题:
考虑下述文法,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)文法
第3题:
阅读下列函数说明和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");
}
第4题:
下列程序的运行结果是( )。 main { int x=1,y=3,a=0; while(x++!=(y-=l)) { a+=1; if(y<x)break; } printf("%d,%d,%d\n",x,y,a); }
A.2,3,2
B.2,3,1
C.1,3,3
D.3,1,2
第5题:
己知某文法G[S]:S→0S0 S→1,从S推导出的符号串可用(21)(n≥0)描述。
A.(010)n
B.0n10n
C.1n
D.01n0
第6题:
已知文法G[S]:S→A0|B1,A→S1|1,B→S0|0,该文法属于乔姆斯基定义的(18)文法,它不能产生串(19)。
语言L={ambn|m≥0,n≥1)的正规表达式是(20)。
一个文法G=(N,T,P,S),其中N是非终结符号的集合,T是终结符号的集合,P是产生式集合,S是开始符号,令集合V=N∪T,那么G所描述的语言是(21)的集合。
程序设计语言引入“类”的概念是为了解决数据保护问题。C++语言将类的成员封装在类体之中,使之具有一定的存取规则,这些规则规定了存取类的成员的权利,其中对于用Private说明的成员,它(22)。
A.0型
B.1型
C.2型
D.3型
第7题:
main( )
{ int x=31,y=2,s=0;
do
{ s-=x*y;
x+=2;
y-=3;} while( x%3==0);
printf(“x=%d\ty=%d\ts=%d\n”,x,y,s);
}
第8题:
文法G[S]:S→xSx|y所描述的语言是()(n0)。
第9题:
程序N2G00G54G90G60X0Y0。 N4S600M3F300 N6G02X0Y0I25J0 N8M05 N10M02 加工出的工件圆心在工件坐标系中距离工件零点()。
第10题:
程序N2G00G54G90G60X0Y0;N4S600M3F300;N6G02X0Y0125J0;N8M05;加工出的工件圆心在工件坐标中距离工件零点()。
第11题:
若H01=10,执行指令N100G00Z50;N110G00G43YX20Y20Z0H01后,刀位点处于Z10处。
第12题:
xyx
(xyx)*
xnyxn(n≥0)
x*yx*
第13题:
A.xx*|yy*|zz*
B.(xx*|yy*)zz*
C.xx*(yy*|zz*)
D.(xx|yy)*zz*
第14题:
A.aa*|bb*|cc*
B.(aa*|bb*)cc*
C.aa*(bb*|cc*)
D.(a|b|c)*
第15题:
已知文法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}
第16题:
下面程序的输出结果是main{ int x=3 ,y=6,a=0; while(x++!=(y-=1) ) { a+=1; if (y<x) break; } printf("x=%d,y=%d,a=%d\n",x,y,a);}A.x=4,y=4,a=1 B.x=5,y=5,a=1 C.x=5,y=4,a=1 D.x=5,y=4,a=3
第17题:
已知某文法G[S]:S→0S0 S→1,从S推导出的符号串可用(21)(n≥0)描述。
A.(010)n
B.0n10n
C.1n
D.01n0
第18题:
已知文法G1=(VT={a,b,d},VN={S,A,B},S,P),其中P为, S→dAB A→aA|a B→bB|ε 该文法生成的语言是(28)。
A.{dambn|m≥0,n≥O}
B.{dambn|m≥1,n≥0}
C.{dambn|m≥0,n≥1}
D.{dambn|m≥1,n≥1}
第19题:
以下不正确的if语句形式是()
第20题:
程序N2G00G54G90G60X0Y0 N4S600M3F300 N6G02X0Y0I0J-25 N8M05 N10M02 加工出工件的圆心在工件坐标系中距离工件零点()。
第21题:
以下程序段()肯定是错的。
第22题:
下面程序中,N22语句可以由()代替。 … N20 G90 G0l X20.5 Y6.0 F250.0 N22 G02 X0 Y16.0 I—30.0 J—40.0 …
第23题:
(xyx)n
xyxn
xynx
xnyxn