欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【计算机类职业资格】国家二级VF机试(程序设计基础)模拟试卷14及答案解析.doc

    • 资源ID:1333762       资源大小:60.50KB        全文页数:10页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】国家二级VF机试(程序设计基础)模拟试卷14及答案解析.doc

    1、国家二级 VF 机试(程序设计基础)模拟试卷 14 及答案解析(总分:60.00,做题时间:90 分钟)一、选择题(总题数:30,分数:60.00)1.在 Visual FoxPro 中,下列程序段执行后,内存变量 sl 的值是 s1=奥运开幕日期 s1=substr(s1,5,4)+left(s1,4)+right(s1,4) ?s1(分数:2.00)A.开幕日期奥运B.奥运日期C.开幕日期D.开幕奥运日期2.创建新项目的命令是(分数:2.00)A.CREATE PROJECTB.CREATE ITEMC.CREATE NEWD.CREATE NEW ITEW3.Modify Command

    2、 命令建立的文件的默认扩展名是(分数:2.00)A.prgB.appC.cmdD.exe4.欲执行程序 tempprg,应该执行的命令是(分数:2.00)A.DO PRG tempprgB.DO tempprgC.DO CMD tempprgD.DO FORM tempprg5.在 Visual FoxPro 中可以用 DO 命令执行的文件不包括(分数:2.00)A.prg 文件B.mpr 文件C.frx 文件D.qpr 文件6.在 Visual FoxPro 中,用于建立或修改程序文件的命令是(分数:2.00)A.MODIFYB.MODIFY CoMMANDC.MODIFY PROCEDUR

    3、ED.MODIFY PROGRAM7.下列命令中,不会创建文件的是(分数:2.00)A.CREATEB.CREATE VIEWC.CREATE FORMD.CREATE QUERY8.下面的程序的功能是将 11 到 2011 之间的素数插入数据库 prime,程序中的错误语句是 CREATE TABLE prime(dat f) n=11 DO WHILE n=2011 f=0 i=2 DO WHILE i=INT(SQRT(n) IF MOD(n,i)0 i=i+1 LOOP ELSE f=1 EXIT ENDIF ENDDO IF f=O INSERT TO prime VALUES(n)

    4、 ENDIF n=n+1 ENDDO(分数:2.00)A.DO WHILE n=2011B.INSERT TO prime VALUES(n)C.i=i+1D.EXIT9.假设表 s 中有 10 条记录,其中字段 b 小于 20 的记录有 3 条,大于等于 20、并且小于等于 30 的记录有3 条,大于 30 的记录有 4 条。执行下面的程序后,屏幕显示的结果是 SET DELETE ON DELETE FROM S WHERE b BETWEEN 20 AND 30?RECCOUNT()(分数:2.00)A.10B.7C.0D.310.下列程序段的输出结果是 CLEAR STORE 10 T

    5、O A STORE 20 TO B SET UDFPARMS TO REFERENCG D0 SWAP WITH A,(B) ?AB PROCEDURE SWAP PARAMETERS X1X2 TEMP=X1 X1=X2 X2=TEMP ENDPROC(分数:2.00)A.10 20B.20 20C.20 10D.10 1011.下列程序段的执行结果是 DIME a(8) a(1)=1 a(2)=1 for i=3 to 8 a(i)=a(i-1)+a(i-2) next ?a(7)(分数:2.00)A.5B.8C.13D.2112.下面程序的运行结果是 SET EXACT ON s=ni+

    6、SPACE(2) IF s=ni IF s=ni ?one ELSE ?two ENDIF ELSE IF s=ni ?three ELSE ?four ENDIFENDIF RETURN(分数:2.00)A.oneB.twoC.threeD.four13.下列程序段执行以后,内存变量 y 的值是 x=76543 y=0 DO WHILE x0 v=x10+y*10 x=int(x10) ENDDO(分数:2.00)A.3456B.34567C.7654D.7654314.下面程序计算一个整数的各位数字之和,在下划线处应填写的语句是 SET TALK OFF INPUTx=TO x s=0 D

    7、O WHILE x!=0 s=s+MOD(x,10) _ ENDDO ?s SET TALK ON(分数:2.00)A.x=int(x10)B.x=int(x10)C.x=x-int(x10)D.x=x-int(x10)15.下列程序段执行以后,内存变量 Y 的值是 CLEAR x=12345 y=0 DO WHILE x0 y=y+x10 x=int(x10) ENDDO ?y(分数:2.00)A.54321B.12345C.51D.1516.下列程序段执行以后,内存变量 y 的值是 x=34567 y=0 DO WHILE x0 y=x10+y*10 x=int(x10) ENDD(分数:

    8、2.00)A.3456B.34567C.7654D.7654317.下列的程序段中 y 的计算结果为 76543 的是(分数:2.00)A.x=34567 y=0 flag=.T DO WHILE flag y=x10+y*10 x=int(x10) IF x0 flag=.F. ENDIF ENDD0B.x=34567 y=0 flag=.T. DO WHILE flag y=x10+y*10 x=int(x10) IF x=0 flag=.F. ENDIF ENDDOC.x=34567 y=0 flag=.T. DO WHILE!flag y=x10+y*10 x=int(x10) IF

    9、x0 flag=.F. ENDIF ENDD0D.x=34567 y=0 flag=.T. DO WHILE!flag y=x10+y*10 x=int(x10) IF x=0 flag=.T. ENDIF ENDDO18.下列程序段执行时在屏幕上显示的结果是 DIME a(6) a(1)=1 a(2)=l FOR i=3 TO 6 a(i)=a(i-1)+a(i-2) NEXT ?a(6)(分数:2.00)A.5B.6C.7D.819.下列程序段的输出结果是 ACCEPT TO A IF A=123 S=0 ENDIF S=1 ?S(分数:2.00)A.0B.1C.123D.由 A 的值决定

    10、20.有以下程序: INPUT TO A S=0 IF A=10 S=1 ENDIF S=2 ?S 假定从键盘输入的 A 值是数值型,则程序的运行结果是(分数:2.00)A.0B.1C.2D.1 或 221.在 Visual FoxPro 中,如果希望跳出 SCANENDSCAN 循环体外执行 ENDSCAN 后面的语句,应使用(分数:2.00)A.LOOP 语句B.EXIT 语句C.BREAK 语句D.RETURN 语句22.在 Visual FoxPro 中,过程的返回语句是(分数:2.00)A.GOBACKB.COMEBACKC.RETURND.BACK23.下列程序段执行以后,内存变量

    11、 X 和 Y 的值是 CLEAR STORE 3 TO X STORE 5 T0 Y PLUS(X),Y) ?XY PROCEDURE PLUS PAR AMETERS A1A2 A1=A1+A2 A2=A1+A2 ENDPROC(分数:2.00)A.8 13B.3 13C.3 5D.8 524.下列程序段执行以后,内存变量 A 和 B 的值是 CLEAR A=10 B=20 SET UDFPA RMS TO REFERENCE DO SQ WITH(A),(B) &参数 A 是值传递,B 是值传递 ?AB PROCEDURE SQ PARAMETERS X1Y1 X1=X1*X1 Y1=2*

    12、X1 ENDPROC(分数:2.00)A.10 200B.100 200C.100 20D.10 2025.下列程序段执行时在屏幕上显示的结果是 x1=20 X2=30 SET UDFPARMS TO VALUE DO test WITH x1x2 ?x1x2 PROCEDURE test PARAMETERS ab x=a a=b b=x ENDPR0(分数:2.00)A.30 30B.30 20C.20 20D.20 3026.下面关于过程调用的陈述中,哪个是正确的(分数:2.00)A.实参与形参的数量必须相等B.当实参的数量多于形参的数量时,多余的实参被忽略C.当形参的数量多于实参的数量

    13、时,多余的形参取逻辑假D.当形参的数量多于实参的数量时,多余的形参取逻辑真27.下面程序的运行结果是: SET TALK OFF n=1 proc1(n) ?n+2 PROCEDURE proc 1 PARAMETERS n FOR k=2 T0 4 n=n+k ENDFOR RETURN(分数:2.00)A.3B.10C.11D.1228.下面程序的运行结果是: SET TALK OFF n=1 DO procl WITH(n) ?n+2 PROCEDURE proc 1 PARAMETERS n FOR k=2 TO 4 n=n+k ENDFOR RETURN(分数:2.00)A.3B.1

    14、0C.11D.1229.如果一个过程不包含 RETURN 语句,或者 RETURN 语句中没有指定表达式,那么该过程:(分数:2.00)A.没有返回值B.返回 0C.返回.F.D.返回.T.30.下列程序段执行以后,内存变量 X 和 Y 的值是 CLEAR STORE 3 TO X STORE 5 TO Y SET UDFPA R MS TO REFERENCE D0 PLUS WITH(X),Y ?XY PROCEDURE PLUS PARAMETERS A1,A2 A1=A1+A2A2=A1+A2ENDPROC(分数:2.00)A.5 8B.8 13C.5 13D.3 13国家二级 VF

    15、机试(程序设计基础)模拟试卷 14 答案解析(总分:60.00,做题时间:90 分钟)一、选择题(总题数:30,分数:60.00)1.在 Visual FoxPro 中,下列程序段执行后,内存变量 sl 的值是 s1=奥运开幕日期 s1=substr(s1,5,4)+left(s1,4)+right(s1,4) ?s1(分数:2.00)A.开幕日期奥运B.奥运日期C.开幕日期D.开幕奥运日期 解析:解析:本题考查字符串函数 RIGHT(),SUBSTR()和 LEFT 的使用。LEFT(c,n),取字符串 C 左边 n个字符;RIGHT(c,n),取字符串 c 右边的 n 个字符;SUBSTR

    16、(c,n1,n2),取字符串 C 第 n1 个字符起的n2 个字符,返回值类型是字符型,对于本题来说,SUBSTR(s1,5,4)的值为“开幕”,LEFT(s1,4)的值为“奥运”,RIGHT(s1,4)的值为“日期”。2.创建新项目的命令是(分数:2.00)A.CREATE PROJECT B.CREATE ITEMC.CREATE NEWD.CREATE NEW ITEW解析:解析:创建新项目的命令是,在命令窗口中输入命令: CREATE PROJECT项目文件名 可以创建一个扩展名为pjx 的项目文件, 在 Visual FoxPro 60 的系统窗口中就会出现一个“项目管理器”窗口。所

    17、以选项 A 正确。3.Modify Command 命令建立的文件的默认扩展名是(分数:2.00)A.prg B.appC.cmdD.exe解析:解析:可用命令方式建立和修改程序文件。命令格式为 modifycommand文件名。执行该命令时,如果指定文件存在,则打开修改;否则,建立一个指定名字的程序文件,而程序文件的扩展名是prg。App 是应用程序的扩展名,exe 是可执行文件的扩展名。4.欲执行程序 tempprg,应该执行的命令是(分数:2.00)A.DO PRG tempprgB.DO tempprg C.DO CMD tempprgD.DO FORM tempprg解析:解析:扩展

    18、名为 prg 的文件是程序文件,而运行程序文件的命令是“do 程序文件名”。5.在 Visual FoxPro 中可以用 DO 命令执行的文件不包括(分数:2.00)A.prg 文件B.mpr 文件C.frx 文件 D.qpr 文件解析:解析:利用 DO 命令可以执行prg 程序文件、mpr 菜单程序和qpt 查询程序等。其中程序文件为默认执行的文件,可省略文件扩展名,而执行菜单文件和查询文件时扩展名不能少。frx 文件是报表文件,打印报表时可先打开报表文件,然后再单击“打印”按钮打印报表。6.在 Visual FoxPro 中,用于建立或修改程序文件的命令是(分数:2.00)A.MODIFY

    19、B.MODIFY CoMMAND C.MODIFY PROCEDURED.MODIFY PROGRAM解析:解析:本题考查建立修改程序文件的命令。在 Visual FoxPro 中,程序文件可以通过两种方式建立。菜单方式:执行【文件】菜单中的【新建】命令,打开程序文件编辑器,然后在编辑器窗口中输入程序内容,最后保存文件。 程序文件的默认扩展名是prg,如果指定其他扩展名,那么在打开和执行程序文件时都要显示指定扩展名。 命令方式:MODIFY COMMAND文件名 用于建立或修改程序文件。7.下列命令中,不会创建文件的是(分数:2.00)A.CREATEB.CREATE VIEW C.CREAT

    20、E FORMD.CREATE QUERY解析:解析:本题考查用命令创建文件。CREATE FORM 是创建表单文件,CREATE QUERY 是创建查询文件。CREATE VIEW 命令是创建视图,其不能建立文件。8.下面的程序的功能是将 11 到 2011 之间的素数插入数据库 prime,程序中的错误语句是 CREATE TABLE prime(dat f) n=11 DO WHILE n=2011 f=0 i=2 DO WHILE i=INT(SQRT(n) IF MOD(n,i)0 i=i+1 LOOP ELSE f=1 EXIT ENDIF ENDDO IF f=O INSERT T

    21、O prime VALUES(n) ENDIF n=n+1 ENDDO(分数:2.00)A.DO WHILE n=2011B.INSERT TO prime VALUES(n) C.i=i+1D.EXIT解析:解析:本题考查向数据库中插入一个记录的 SQL 命令 INSERT INTO。其语法格式如下: 格式1:INSERT INTO dbf_name(fname1,fiaame2,) VALuES(eXpression1,eXpression2,) 格式2:INSERT INTO dbf_name FROM ARRAY ArrayNamelFROM MEMVAR。9.假设表 s 中有 10

    22、条记录,其中字段 b 小于 20 的记录有 3 条,大于等于 20、并且小于等于 30 的记录有3 条,大于 30 的记录有 4 条。执行下面的程序后,屏幕显示的结果是 SET DELETE ON DELETE FROM S WHERE b BETWEEN 20 AND 30?RECCOUNT()(分数:2.00)A.10 B.7C.0D.3解析:解析:DELETE 表示逻辑删除逻辑删除不影响 RECCOUNT()函数的统计结果。10.下列程序段的输出结果是 CLEAR STORE 10 TO A STORE 20 TO B SET UDFPARMS TO REFERENCG D0 SWAP

    23、WITH A,(B) ?AB PROCEDURE SWAP PARAMETERS X1X2 TEMP=X1 X1=X2 X2=TEMP ENDPROC(分数:2.00)A.10 20B.20 20 C.20 10D.10 10解析:解析:在这段程序代码中,定义了子过程 SWAP,其作用是交换两个变量 X1,X2 的值。 在主程序中,首先定义了两个实参变量 A 和 B,并分别赋值为 10 和 20。用 SETUDFPARMS TO REFERENCG 语句设置变量传递方式为按引用传递。在 DO SWAPWITH A,(B)语句中,变量 B 用一对括号括起来,使其变成一般形式的表达式,所以不管什么

    24、情况,总是按值传递。所以结果就是变量 A 按引用传递,变量 B 按值传递。因此程序运行的结果是变量 A 的值等于 20,而实参变量 B 的值不变,仍为 20。所以答案为选项 B。11.下列程序段的执行结果是 DIME a(8) a(1)=1 a(2)=1 for i=3 to 8 a(i)=a(i-1)+a(i-2) next ?a(7)(分数:2.00)A.5B.8C.13 D.21解析:解析:。For 循环中的语句 a(i)=a(i-1)+a(i-2)是指定每个元素的值为它的前两项的和,这个元素必须只能从第 3 项开始指定。由于前两项分别是 1、1,所以数组 a 的 8 个元素分别是l,1

    25、,2,3,5,8,13,21:元素 a(7)的值是 13。12.下面程序的运行结果是 SET EXACT ON s=ni+SPACE(2) IF s=ni IF s=ni ?one ELSE ?two ENDIF ELSE IF s=ni ?three ELSE ?four ENDIFENDIF RETURN(分数:2.00)A.oneB.twoC.three D.four解析:解析:在用双等号(=)比较两个字符串时,只有两个字符串完全相同时,运算结果才可能是逻辑真T,在用单等号(=)比较两个字符串时,运算结果与 SET ExACT ONIOFF 的设置有关:ON 先在较短的字符串的尾部加上若

    26、干个空格,使两个字符串的长度相等,然后进行精确比较;当处于 OFF 状态时,只要右边字符串与左边字符串的前面部分内容相匹配,即可得到逻辑真T。根据程序的结构,最后的运行结果为 three。13.下列程序段执行以后,内存变量 y 的值是 x=76543 y=0 DO WHILE x0 v=x10+y*10 x=int(x10) ENDDO(分数:2.00)A.3456B.34567 C.7654D.76543解析:解析:题目给出的程序段中,用到了 DO WHILEENDDO 循环结构。执行该语句时,先判断 DOWHILE处的循环条件是否成立,如果条件为真,则执行 DO WHILE 和 ENDDO

    27、 之间的命令序列。当执行到 ENDDO 时,返回到 DO WHILE,再次判断循环条件是否为真,以确定是否再次执行循环体。若条件为假,则结束该循环语句,执行 ENDDO 后面的语句。循环体中还用到了两个算术运算符和,其中是求余运算,是取整运算。根据所给初值和循环条件,可以判断出第一次循环后 y=3,x=7654;第二次后 y=34,x=765;第三次后,y=345:x=76,第四次后 y=3456,x=7:第五次后 y=34567,x=0:第六次对条件 x0 进行判断,结果为假,故退出循环,执行结束,最终 y 的值即为 34567。14.下面程序计算一个整数的各位数字之和,在下划线处应填写的语

    28、句是 SET TALK OFF INPUTx=TO x s=0 DO WHILE x!=0 s=s+MOD(x,10) _ ENDDO ?s SET TALK ON(分数:2.00)A.x=int(x10) B.x=int(x10)C.x=x-int(x10)D.x=x-int(x10)解析:解析:题干中给出的程序功能是将一个整数中的各位数字从个位数开始累加。每次循环中将个位数累加后,将该位从整数中删除,这样原来十位上的数字就成为个位数,直到所有数字累加完毕。其中,MOD(x,10)语句是得到个位数字,x=int(x10)语句是将个位数字删除。15.下列程序段执行以后,内存变量 Y 的值是 C

    29、LEAR x=12345 y=0 DO WHILE x0 y=y+x10 x=int(x10) ENDDO ?y(分数:2.00)A.54321B.12345C.51D.15 解析:解析:本题考查的是 DO WHILE 循环语句的使用,其中涉及到一个累加的计算,依次对变量 x 的值,即本题中的 12345,从后向前对各位数进行相加,最后输出,即输出 5+4+3+2+1 的计算值。16.下列程序段执行以后,内存变量 y 的值是 x=34567 y=0 DO WHILE x0 y=x10+y*10 x=int(x10) ENDD(分数:2.00)A.3456B.34567C.7654D.76543

    30、 解析:解析:本题中的循环条件是在 x 值丈于零时就进行循环计算 y=x10+y10 和 x=int()10)的操作,第一次循环 y=7,x=3456;第二次 y=76,x=345;第三次 y=765,x=34;第四次 y=7654,x=3;第五次y=76543,x=0。Y 的最终结果时 76543。17.下列的程序段中 y 的计算结果为 76543 的是(分数:2.00)A.x=34567 y=0 flag=.T DO WHILE flag y=x10+y*10 x=int(x10) IF x0 flag=.F. ENDIF ENDD0B.x=34567 y=0 flag=.T. DO WH

    31、ILE flag y=x10+y*10 x=int(x10) IF x=0 flag=.F. ENDIF ENDDO C.x=34567 y=0 flag=.T. DO WHILE!flag y=x10+y*10 x=int(x10) IF x0 flag=.F. ENDIF ENDD0D.x=34567 y=0 flag=.T. DO WHILE!flag y=x10+y*10 x=int(x10) IF x=0 flag=.T. ENDIF ENDDO解析:解析:本题考查对简单的循环语句、Visual FoxPro 操作符及函数的掌握。在此程序中,首先为将变量 X 和 Y 分别赋值为 34

    32、567 和 0,然后进入循环。而表示去余数,则 3456710 的结果为 7,并将其值赋给 Y,接下来,将 X 值除 10 取整后的值(3456)赋值给 X,此时 X 的值0,再次进行循环。此时 Y 的值为 7,执行 Y=X10+Y*10 语句后,Y 的值为 76,而 X 的值经除 10 取整后,为 345 再次进行循环,依次类推,直至 X 的值等于 0 时退出循环,此时 Y 的值为 76543。18.下列程序段执行时在屏幕上显示的结果是 DIME a(6) a(1)=1 a(2)=l FOR i=3 TO 6 a(i)=a(i-1)+a(i-2) NEXT ?a(6)(分数:2.00)A.5

    33、B.6C.7D.8 解析:解析:根据题干中的程序可知,从第 3 项开始,各项的数值等于前两项之和,所以 a(3)=2,a(4)=3,a(5)=5,a(6)=8。19.下列程序段的输出结果是 ACCEPT TO A IF A=123 S=0 ENDIF S=1 ?S(分数:2.00)A.0B.1 C.123D.由 A 的值决定解析:解析:ACCEPT 命令格式: ACCEPT字符表达式to内存变量 当程序执行到该命令时,暂停往下执行,等待用户从键盘输入字符串。当用户以回车键结束输入时,系统将该字符串存入指定的内存变量,然后继续往下执行程序。 程序结构是指程序中命令或语句执行的流程结构。顺序结构、

    34、选择结构和循环结构是程序的三种基本结构。IFENDIF 语句是选择结构中的条件语句。按照顺序执行的原则无论是否执行 IF 语句,语句 S=1 赋值语句都会执行。所以本程序段的返回值是 1。20.有以下程序: INPUT TO A S=0 IF A=10 S=1 ENDIF S=2 ?S 假定从键盘输入的 A 值是数值型,则程序的运行结果是(分数:2.00)A.0B.1C.2 D.1 或 2解析:解析:本题考查程序的顺序结构和分支结构,基本语法格式如下: IF 条件表达式 命令组 ENDIF 在题目的的程序中,如果变量 A 的值等于 10,则把 1 赋于变量 S,但在条件语句之外又重新定义 S

    35、的值为2,因此,不管 IF 语句是否成立,S 的值始终为 2。21.在 Visual FoxPro 中,如果希望跳出 SCANENDSCAN 循环体外执行 ENDSCAN 后面的语句,应使用(分数:2.00)A.LOOP 语句B.EXIT 语句 C.BREAK 语句D.RETURN 语句解析:解析:LOOP 和 EXIT 都可以出现在循环体内。LOOP 表示结束本次循环,开始下一次循环;EXIT 表示结束循环语句的执行,跳出循环执行后面的语句。22.在 Visual FoxPro 中,过程的返回语句是(分数:2.00)A.GOBACKB.COMEBACKC.RETURN D.BACK解析:解析

    36、:visual FoxPro 中过程式的返回语句为 RETURN。RETURN 结束当前程序的执行,返回到调用它的上级程序,若无上级程序则返回到命令窗口。23.下列程序段执行以后,内存变量 X 和 Y 的值是 CLEAR STORE 3 TO X STORE 5 T0 Y PLUS(X),Y) ?XY PROCEDURE PLUS PAR AMETERS A1A2 A1=A1+A2 A2=A1+A2 ENDPROC(分数:2.00)A.8 13B.3 13C.3 5 D.8 5解析:解析:调用模块程序一般有两种格式: 格式 1 通过 DO 命令调用,格式 2 是在过程名或文件名后面加括号,括号

    37、中包括若干个实参变量。本题采用的是利用格式 2 的方式调用模块程序。采用格式 2 调用模块程序时,默认情况下都以按值方式传递参数,如果要改变传递方法,必须通过 SET UDFPARMS 命令进行设置。但是,有一点需要注意,不论是设置何种传递方式,凡是用括号括起来的实参,全部都是按值传递,它不受 SET UDFPARMS 语句的影响。 本题中 X 和 Y 都是按值传递,形参值的变化不会影响到实参值的,X值等于 3,Y 值等于 5。24.下列程序段执行以后,内存变量 A 和 B 的值是 CLEAR A=10 B=20 SET UDFPA RMS TO REFERENCE DO SQ WITH(A)

    38、,(B) &参数 A 是值传递,B 是值传递 ?AB PROCEDURE SQ PARAMETERS X1Y1 X1=X1*X1 Y1=2*X1 ENDPROC(分数:2.00)A.10 200B.100 200C.100 20D.10 20 解析:解析:模块程序可以接收程序传递过来的参数,参数传递的方式有两种:按值传递和按引用传递。其中当按值传递时,形参变量值改变时,不会影响实参变量的取值,即形参变量的值不传回;当按引用传递时,形参变量值改变时,实参变量也发生改变。题干中参数 A 和 B 都是按值传递,不会影响实参变量的取值,A 和B 的值不会改变。25.下列程序段执行时在屏幕上显示的结果是

    39、 x1=20 X2=30 SET UDFPARMS TO VALUE DO test WITH x1x2 ?x1x2 PROCEDURE test PARAMETERS ab x=a a=b b=x ENDPR0(分数:2.00)A.30 30B.30 20 C.20 20D.20 30解析:解析:带参数程序的调用有两种格式: 格式 1:DO文件名过稃名WITH实参 1,实参 21 格式 2:文件名(实参表)过程名(实参 1(,实参 2,) 采用格式 1 调用模块程序时,如果实参是常量或一般形式的表达式,则为按值传递。如果实参是变量,则为按引用传递。该格式不受 UDFPARMS 值的设置影响。

    40、 依据题干,PROCEDURE test 实现两个变量的交换。26.下面关于过程调用的陈述中,哪个是正确的(分数:2.00)A.实参与形参的数量必须相等B.当实参的数量多于形参的数量时,多余的实参被忽略C.当形参的数量多于实参的数量时,多余的形参取逻辑假 D.当形参的数量多于实参的数量时,多余的形参取逻辑真解析:解析:本题考查过程调用中实参与形参的关系。主要有以下四点:实参可以是常量、变量,也可以是一般形式的表达式;调用时,实参传递给形参;形参数目不能少于实参数目;形参多于实参时,多余的形参初值为逻辑假。27.下面程序的运行结果是: SET TALK OFF n=1 proc1(n) ?n+2

    41、 PROCEDURE proc 1 PARAMETERS n FOR k=2 T0 4 n=n+k ENDFOR RETURN(分数:2.00)A.3 B.10C.11D.12解析:解析:本题考查形参与实参的传递及变量的作用。本题中的 procl(n)模块调用是采用按值传递的方式,形参变量值的改变不会影响实参变量的值,因此,n 的值在实参中还是等于 1,n+1 的输出结果为3。28.下面程序的运行结果是: SET TALK OFF n=1 DO procl WITH(n) ?n+2 PROCEDURE proc 1 PARAMETERS n FOR k=2 TO 4 n=n+k ENDFOR

    42、RETURN(分数:2.00)A.3 B.10C.11D.12解析:解析:本题考查形参与实参的传递及变量的作用。在 DOprocl WITH(n)过程调用命令中,变量 n 用圆括号括起来的,所以,不管什么情况下,都是按值传递方式,形参变量值的改变不会影响实参变量的值,程序的输出结果为 3。29.如果一个过程不包含 RETURN 语句,或者 RETURN 语句中没有指定表达式,那么该过程:(分数:2.00)A.没有返回值B.返回 0C.返回.F.D.返回.T. 解析:解析:本题考查 RETURN 语句的语法。RETURN 语句的返回语句,其功能是返回程序调用处或命令窗口。该语句可省略,因为在每个

    43、程序执行的最后,系统都会自动执行 1 个 return 语句。30.下列程序段执行以后,内存变量 X 和 Y 的值是 CLEAR STORE 3 TO X STORE 5 TO Y SET UDFPA R MS TO REFERENCE D0 PLUS WITH(X),Y ?XY PROCEDURE PLUS PARAMETERS A1,A2 A1=A1+A2A2=A1+A2ENDPROC(分数:2.00)A.5 8B.8 13C.5 13D.3 13 解析:解析:本题考查带参数的过程调用,语句 SET UDFPARMS TO REFERENCE 语句,表示内存变量是按引用传递。所以实参变量 Y 是引用传递,(X)是按值传递。在执行过程 PLUS 时,A1=3,A5=5,过程 PLUS 运行完后,A1=8,A2=13,因为实参变量 Y 是引用传递,(X)是按值传递,所以实参变量 Y 的值等 A2=13,X的值等于 3。


    注意事项

    本文(【计算机类职业资格】国家二级VF机试(程序设计基础)模拟试卷14及答案解析.doc)为本站会员(ownview251)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开