flash脚本编程理解练习知识题带答案解析.docx
《flash脚本编程理解练习知识题带答案解析.docx》由会员分享,可在线阅读,更多相关《flash脚本编程理解练习知识题带答案解析.docx(26页珍藏版)》请在冰点文库上搜索。
![flash脚本编程理解练习知识题带答案解析.docx](https://file1.bingdoc.com/fileroot1/2023-5/24/bc9646e2-4214-4b0c-a614-28d13391d38c/bc9646e2-4214-4b0c-a614-28d13391d38c1.gif)
flash脚本编程理解练习知识题带答案解析
A1.若有定义语句:
vara:
int=1,b:
int=2,c:
int=3;,以下选项中错误的赋值表达式是
A)a=(b=4)=3;B)a=b=c+1;
C)a=(b=4)+c;D)a=1+(b=c=4);
D2.if语句的基本形式是:
if(表达式)语句;
以下关于“表达式”值的叙述中正确的是
A)必须是逻辑值B)必须是整数值
C)必须是正数D)可以是任意合法的数值
A3.有以下程序
varx:
int=011;
text1.text=String(++x);
程序运行后的输出结果是
A)12B)11C)10D)9
4.有以下程序段
for(vari:
int=0;i<8;i++)
{
n=Math.round(Math.random()*10}%5;
switch(n)
{
case1:
case3:
text1.text=String(n);break;
case2:
case4:
text1.text=String(n);;continue;
case0:
exit(0);
}
text1.text=String(n);;
}
以下关于程序段执行情况的叙述,正确的是
A)for循环语句固定执行8次
B)当产生的随机数n为4时结束循环操作
C)当产生的随机数n为1和2时不做任何操作
D)当产生的随机数n为0时结束程序运行
B5.有以下程序
vars:
Array=newArray("3","1","2","x","y",0,"s","3","4","f","4","w","2",0);
vari:
int,n:
int=0;
for(i=0;s[i]!
=0;i++)
if(s[i]>='0'&&s[i]<='9')n++;
text1.text=String(n);
}
程序运行后的输出结果是
A)0B)3C)7D)8
D6.若i和k都是int类型变量,有以下for语句
for(i=0,k=-1;k=1;k++)text1.text="*****\n";
下面关于语句执行情况的叙述中正确的是
A)循环体执行两次
B)循环体执行一次
C)循环体一次也不执行
D)构成无限循环
C7.有以下程序
varb:
int,c:
int,i:
int;
b=65;c=97;//97是小写a的ASCII码,65是大写A的ASCII码
for(i=0;i<6;i++)
{if(i%2)text1.text+=String.fromCharCode(i+b);
elsetext1.text+=String.fromCharCode(i+c);
}
text1.text+="\n";
程序运行后的输出结果是
A)ABCDEFB)AbCdEfC)aBcDeFD)abcdef
D8.有以下程序(说明:
字母A的ASCII码值是65)
functionfun(s:
Array):
void
{
vari:
int=0;
while(s[i])
{if(i%2)text1.text+=s[i];
i++;
}
}
vara:
Array=newArray("B","Y","T","E",0);
fun(a);
程序运行后的输出结果是
A)BYB)BTC)YTD)YE
D9.有以下程序
varxx:
int=1,yy:
int=0;
if(!
xx)yy++;
elseif(xx==0)
if(xx)yy+=2;
elseyy+=3;
text1.text=String(yy);
程序运行后的输出结果是
A)3B)2C)1D)0
B10.设有如下函数定义
functionfun(k:
int):
int
{if(k<1)return0;
elseif(k==1)return1;
elsereturnfun(k-1)+1;
}
若执行调用语句:
n=fun(3);,则函数fun总共被调用的次数是
A)2B)3C)4D)5
B11.有以下程序
functionfun(xx:
int,yy:
int):
int
{if(xx!
=yy)return((xx+yy)/2);
elsereturn(xx);
}
vara:
int=4,b:
int=5,c:
int=6;
text1.text=String(fun(2*a,fun(b,c)));
程序运行后的输出结果是
A)3B)6C)8D)12
C12.有以下程序
vara:
int=8,c:
int;
c=a>>3;
text1.text=String(c);
程序运行后的输出结果是
A)32B)16C)1D)0
13.以下程序运行后的输出结果是4。
vara:
int;
a=(int)((Number)(3/2)+0.5+(int)(1.99)*2);
text1.text=String(a);
14.有以下程序
varxx:
int;
xx=12;
if(xx>15)text1.text+=String(xx);
if(xx>10)text1.text+=String(xx);
if(xx>5)text1.text+=String(xx+5);
其运行结果是1217。
15.有以下函数
functionprt(ch:
String,n:
int):
void
{vari:
int;
for(i=1;i<=n;i++)
text1.text+=(i%6!
=0?
ch:
"\n");
}
执行调用语句prt('*',24);后,函数共输出了4行*号。
16.以下程序运行后的输出结果是200。
varxx:
int=10,yy:
int=20,tt:
int=0;
if(xx==yy)tt=xx;xx=yy;yy=tt;
text1.text+=String(xx)+String(yy);
17.己知a所指的数组中有N个元素。
函数fun的功能是,将下标k(k>0)开始的后续元素全部向前移动一个位置。
请填空。
functionfun(a:
Array,k:
int)
{vari:
int;
for(i=k;i{
a[i]=a[i+1];
}
}
18.以下程序运行后的输出结果是0000。
vari:
int,n:
Array=newArray(0,0,0,0,0);
for(i=1;i<=4;i++)
{n[i]==n[i-1]*2+1;
text1.text+=String(n[i]);}
B19.表达式a+=a-=a=9的值是
A)9
B)-9
C)18
D)0
A20.有以下程序
var a:
int=1,b:
int=0;
if(!
a)b++;
else if(a==0)if(a)b+=2;
else b+=3;
text1.text+=String(b)+"\n";
程序运行后的输出结果是
A)0
B)1
C)2
D)3
B21.有以下程序
vara:
int=1,b:
int=2;
while(a<6){b+=a;a+=2;b%=10;}
text1.text+=String(a)+","+String(b);
程序运行后的输出结果是
A)5,11
B)7,1
C)7,11
D)6,1
B22.有以下程序
vary:
int=10;
while(y--);
text1.text+="y="+String(y);
程序执行后的输出结果是
A)y=0
B)y=-1
C)y=1
D)while构成无限循环
D23.有以下程序
varn:
int=1,m:
int;
m=f(f(f(n)));
text1.text=String(m);
functionf(x:
int):
int
{return x*2;}
程序运行后的输出结果是
A)1
B)2
C)4
D)8
A24.有以下程序(函数fun只对下标为偶数的元素进行操作)
functionfun(a:
Array,n:
int)
{vari:
int,j:
int,k:
int,t:
int;
for(i=0;i{k=i;
for(j=i;ja[k])k=j;
t=a[i];a[i]=a[k];a[k]=t;
}
}
varaa:
Array=newArray(1,2,3,4,5,6,7),i;
fun(aa,7);
for(vari:
int=0;i<7;i++)text1.text+=String(aa[i])+",";
程序运行后的输出结果是
A)7,2,5,4,3,6,1,
B)1,6,3,4,5,2,7,
C)7,6,5,4,3,2,1,
D)1,7,3,5,6;2,1,
A25.有以下程序
functionfun(xx:
int):
void
{if(xx/2>1)fun(xx/2);
text1.text+=String(xx)+""
}
fun(7);
程序运行后的输出结果是
A)137
B)731
C)73
D)37
D26.有以下程序
varc:
int=124;
c=c_______;
text1.text+=String(c);
若要使程序的运行结果为248,应在下划线处填入的是
A)>>2 B)|248 C)&0248 D)<<1
27.在C兼容语言中,当表达式值为0时表示逻辑值“假”,当表达式值为!
0时表示逻辑值“真”。
28.vari:
int,n:
Array=newArray(0,0,0,0,0);
for(i=1;i<=4;i++)
{n[i]=n[i-1]*3+1;text1.text+=String(n[i])+"";}
}
程序运行后的输出结果是0000。
29.以下fun函数的功能是:
找出具有N个元素的一维数组中的最小值,并作为函数值返回。
请填空。
(设N已定义)
functionfun(xx:
Array):
int
{vari:
int,k:
int=0;
for(i=0;iif(xx[i]k=i;
returnx[k];
}
30.以下fun函数的功能是在N行M列的整形二维数组中,选出一个最大值作为函数值返回,请填空。
(设M,.N已定义)
functionfun(a:
Array)
{vari:
int,j:
int,row:
int=0,col:
int=0;
for(i=0;i for(j=0;j if(a[i][j]>a[row][col]){row=i;col=j;}
return(a[row][col]);
}
31.有以下程序
varn:
Array,i:
int,j:
int;
for(i=0;i<2;i++)n[i]=0;
for(i=0;i<2;i++)
for(j=0;j<2;j++)n[j]=n[i]+1;
text1.text=String(n[1]);
程序运行后的输出结果是3.
A32.有如下定义:
vara:
Number;
则逻辑表达式(a==1)||(a!
=1)的值是
A)1B)0C)2D)不知道a的值,不能确定
B33.以下选项中,与if(a==1)a=b;elsea++;语句功能不同的switch语句是
A)switch(a)
{case1:
a=b;break;
default:
a++;
}
B)switch(a==1)
{case0:
a=b;break;
case1:
a++;
}
C)switch(a)
{default:
a++;break;
case1:
a=b;
}
D)switch(a==1)
{case1:
a=b;break;
case0:
a++;
}
C34.有如下嵌套的if语句
if(a
if(aelsek=c;
elseif(belsek=c;
以下选项中与上述if语句等价的语句是
A)k=(a
a:
b;k=(bb:
c;
B)k=(a
((ba:
b):
((bb:
c);
C)k=(a
((aa:
c):
((bb:
c);
D)k=(a
a:
b;k=(aa:
c
35.有以下程序
vari:
int,j:
int,m:
int;
for(i=1;i<3;i++)
{
for(j=3;j>0;j--)
{
if(i*j>3)break;尼玛=1
m=i*j;
}
}
text1.text="m="+String(m);
程序运行后的输出结果是:
A)m=6B)m=2C)m=4D)m=5
D36.有以下程序
vara:
int=1,b:
int=2;
for(;a<8;a++)
{
b+=a;
a+=2;
}
text1.text=String(a)+","+String(b);
程序运行后的输出结果是:
A)9,18B)8,11C)7,11D)10,14
B37.以下关于return语句的叙述中正确的是
A)一个自定义函数中必须有一条return语句
B)一个自定义函数中可以根据不同情况设置多条return语句
C)定义成void类型的函数中可以有带返回值的return语句
D)没有return语句的自定义函数在执行结束时不能返回到调用处
C38.有以下程序
vara:
Array=newArray(1,2,3,4,5);
varb:
Array=newArray(0,2,1,3,0);
vari:
int,s:
int=0;
for(i=0;i<5;i++)
s+=a[b[i]];
text1.text=String(s);
程序运行后的输出结果是:
A)6B)10C)11D)15
39.有以下程序
varb:
Array=newArray;
b[0]=newArray(0,1,2);
b[1]=newArray(0,1,2);
b[2]=newArray(0,1,2);
vari:
int,j:
int,t:
int=1;尼玛=2
for(i=0;i<3;i++)
for(j=i;j<=1;j++)
t+=b[i][b[j][i]];
text1.text=String(t);
程序运行后的输出结果是:
A)1B)3C)4D)9
B40.有以下程序
functionf(t:
Array,n:
int)
{
if(n>0)return(t[n-1]+f(t,n-1));
elsereturn0;
}
vara:
Array=newArray(1,2,3,4);
vars:
int;
s=f(a,4);
text1.text=String(s);
程序运行后的输出结果是
A)4B)10C)14D)6
41.设x为int型变量,请写出一个关系表达式x%3==0&&x%7==0,用以判断x同时为3和7的倍数时,关系表达式的值为真。
42.有以下程序
vara:
int=1,b:
int=2,c:
int=3,d:
int=0;
if(a==1)
if(b!
=2)
if(c==3)d=1;
elsed=2;
elseif(c!
=3)d=3;
elsed=4;
elsed=5;
text1.text=String(d);
程序运行后的输出结果是4。
43.有以下程序
vari:
int,j:
int;
vara:
Array=newArray;
a[0]=newArray(1,2,3);
a[1]=newArray(4,5,6);
a[2]=newArray(7,8,9);
for(i=0;i<3;i++)
for(j=i;j<3;j++)
text1.text+=String(a[i][j]);
程序运行后的输出结果是123569。
44.有以下程序
vara:
Array=newArray;
a[0]=newArray(1,2,3);
a[1]=newArray(4,5,6);
a[2]=newArray(7,8,9);
varb:
Array=newArray(0,0,0);
vari:
int;
for(i=0;i<3;i++)b[i]=a[i][2]+a[2][i];
for(i=0;i<3;i++)text1.text+=String(b[i]);
程序运行后的输出结果是101418。
45.以下程序的功能是:
将值为三位正整数的变量x中的数值按照个位、十位、百位的顺序拆分并输出。
请填空。
varxx:
int=256;
text1.text+=String(xx%10)+","+String(int(xx/10%10))+","+String(int(xx/100));
A46.阅读以下程序:
varcase:
int,printEF:
Number;
case=14.2;
printEF=6;
text1.text=String(case)+","+String(printEF);
该程序在编译时产生错误,其出错原因是:
A)定义语句出错,case是关键字,不能用作用户自定义标识符
B)定义语句出错,printEF不能用作用户自定义标识符
C)定义语句无错,printEF作为Number型变量,不能被赋值为整数6
D)定义语句无错,case作为整型变量,不能被赋值为带小数点的数14.2
B47.表达式:
(int)(9/2)-(9)%2的值是
A)0B)3C)4D)5
D48.有以下程序
vara:
int=1,b:
int=0;
text1.text=String(b=a+b)+","+String(a=2*b);
程序运行后的输出结果是:
A)0,0B)1,0C)3,2D)1,2
C49.设有定义:
vara:
int=1,b:
int=2,c:
int=3;
以下语句中执行效果与其它三个不同的是:
A)if(a>b)c=a,a=b,b=c;B)if(a>b){c=a,a=b,b=c;}
C)if(a>b)c=a;a=b:
b=c;D)if(a>b){c=a;a=b;b=c;}
A50.有以下程序
varc:
int=0,k:
int;
for(k=1;k<3;k++)
switch(k)
{
default:
c+=k;
case2:
c++;break;
case4:
c+=2;break;
}
text1.text=String(c);
程序运行后的输出结果是:
A)3B)5C)7D)9
上机作业汇总(有误差,请原谅):
第一次:
球体体积计算公式为:
体积=(4/3)*圆周率*半径的三次方。
球体表面积公式为:
表面积=4*圆周率*半径的平方。
请用as代码计算半径为10厘米的球体的体积和表面积,并显示在舞台上。
注意加上提示性的文本。
constr=10;
vars:
Number,v:
Number;
s=4*Math.PI*r*r;
v=4/3*Math.PI*r*r*r;
text1.text=String(s);
text2.text=String(v);
第二次:
计算
varsum:
Number=1,temp:
Number=0,n:
int=20;
for(vari:
int=1;i<=n;i++)
{
sum=sum*i;
temp+=sum;
}
text1.text=String(temp)
第三次:
请编程在舞台上绘制20*20的方格,两条平行线之间的距离为20个像素。
varmyShape:
Shape=newShape();
varmyGraphics:
Graphics=myShape.graphics;
myShape.graphics.lineStyle(1,0x0,1)
for(vari:
int=0;i<=400;i+=20)
{
myGraphics.moveTo(i,0);
myGraphics.lineTo(i,400);
myGraphics.moveTo(0,i);
myGraphics.lineTo(400,i);
addChild(myShape)
}
第四次:
请在舞台上安排两个动态文本框。
在第一个文本框内显示10个0~100的随机整数,在二个文本框内显示这10个数中最小的一个(不用Math.min()方法)。
varnum:
Array=newArray();
for(vari:
int=0;i<10;i++)
{
num[i]=int(Math.random()*100);
text1.text=String(num);
}
varmin:
int=num[9];
for(i=8;i>=0;i--)
{
if(num[i]min=num[i];
}
text2.text=String(min)
第五次:
在舞台上安排一个动态文本框,其尺寸覆盖整个舞台。
请编写代码在这个动态文本框内输出以下图形:
for(vari:
int=0;i<=6;i++)
{
text1.appendText("\n")
for(varj:
int=0;j<6-i;j++)
{
text1.appendText("")
}
for(j=i;j>=0;j--)
{
text1.appendText("*");
}
}
第六、七次:
第一题:
请编写一个函数,该函数有两个形参,分别为一个数组和一个整数n。
函数的功能为:
删除