《VF程序阅读选择题.doc》由会员分享,可在线阅读,更多相关《VF程序阅读选择题.doc(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1下面程序的功能是:输入8个字符,如果第三到第六个字符为“OKOK”,则执行命令文件pass,否则重新输入,若输入超过三次则退出程序运行,请将程序补充完整。CLEARPASSWORD=SPACE(8)I=3DO WHILE .T. 10,10 SAY 输入口令:GET PASSWORD( 56 ) IF( 57 ) =OKOK( 58 ) 退出循环ELSE I=I-1IF ( 59 ) RETURN ENDIF ENDIFENDDODO passRETURN(56) AREAD BPUT CGET DWRITE(57) A STR(PASSWORD,3,4)B SUBSTR(PASSWORD,
2、3,4) C RIGHT(PASSWORD,3,4)D LEFT(PASSWORD,3,4)(58) AEND BRETURN CQUET DEXIT(59)AI=.F. BI=.T. CI=0 DI= -1 2下面程序的功能是:对图书管理数据库中的表SMDE.DBF按书名进行查询。请将程序补充完整。 USE SMDB INDEX ON 书名 TAG 书名 NY=Y DO WHILE ( 60 ) GO TOP ACCEPT 请输入书名:TO SM SEEK ( 61 ) IF ( 62 ) DISPLAYELSE ?查无此书 ENDIFWAIT 继续吗?(Y/N)TO NYNY=( 63 )
3、ENDDO(60)ANY BNOT NY CNY=.T. DNY=Y(61) ASM BSM C&SM D$SM(62) AEOF() BFOUND() C .T. D .F.(63)AN/Y Bn/y CUPPER(NY) DT=1第(64)-(67)选择题基于下面给定的关系: 学生关系S(S#,SNAME,SEX,AGE,SDEPT),其字段分别表示学号、姓名、性别、年龄、所在系别课程关系C(C#,CNAME,TEACHER),其字段分别表示课程号、课程名、授课教师学生选课关系SC(S#,C#,GRADE),其字段分别表示学号、课程号、成绩3下面查询语句实现检索学生姓名及其所选修课程的课程
4、号和成绩。SELECT S.SNAME,SC.C#,SC.GRADE;FROM ( 64 );WHERE S.S#=SC.S#(64)AS,C BC,SC CS,SC DS4下面查询语句实现检索所有比“王华”年龄大的学生姓名、年龄和性别。SELECT SNAME,AGE,SEX;FROM S;WHERE AGE( 65 )(65) A(SELECT AGE FROM S WHERE SNAME=王华)B(SELECT AGE WHERE SNAME=王华)C王华 AGED王华.AGE5下面查询语句实现检索选修四门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。SELE
5、CT S#,SUM(GRADE);FROM SC;WHERE GRADE=60 ( 66 )(66)AORDER BY 2 DESC HAVING COUNT(*)=4 BGROUP BY S# HAVING COUNT(*)=4 ORDER BY 2 DESC CHAVING COUNT(*)=4 GROUP BY S# DORDER BY 2 DESC GROUP BY S# HAVING COUNT(*)=46下面查询语句实现检索“信息系”学生选修了的所有课程名。SELECT CNAME;FROM S,C,SC;WHERE( 67 )(67) AS.S#=SC.S# AND SC.C#=
6、C.C# AND S.SDEPT=信息系 BS.S#=SC.S# AND S.SDEPT=信息系 CSC.C#=C.C# AND S.SDEPT=信息系 DS.SDEPT=信息系7下面程序的功能是完成图书查询,用户输入书名后,从图书表(图书.dbf)中给定的书目的信息。若用户没有输入书名则要求用户重新输入,若用户输入字符串“000”,则结束查询。DO WHILE .T. ACCEPT ”请输入书名:”TO SM IF LEN(ALLTRIM(SM)=0 ( 68 ) ENDIF IF ALLTRIM(SM)=”000” ( 69 ) ENDIF LOCALTE ALL FOR 书名=ALLTR
7、IM(SM) IF FOUND() DO WHILE NOT EOF() DISPLAY ( 70 ) ENDDO ELSE ?”查无此书” ENDIF ENDDO(68)ALOOP BEXIT CQUIT DRETURN(69)ALOOP BEXIT CQUIT DREUTRN(70)ALOOP BEXIT CSKIP DCONTINUE第(56)-(61)选择题使用如下三个数据库表:学生.DBF:学号C(8),姓名C (12),性别C (2), 出生日期D ,院系C(8)课程.DBF:课程编号C(4),课程名称C(10),开课院系C(8)学生成绩.DBF:学号C(8),课程编号C(4),成
8、绩11 .下面语句实现查询每门课程的最高分,要求得到的信息包括课程名称和分数。SELECT 课程名称,( 56 )FROM( 57 )WHERE 课程.课程编号=学生成绩.课程编号;GROUP BY ( 58 )(56)A. MAX(成绩)AS 分数 B. MAX (成绩)LIKE 分数 C. SUM (成绩)分数 D. SUM(成绩)AS 分数(57)A. 学生,课程 B. 课程,学生成绩 C. 学生,学生成绩 D. 学生成绩(58)A.课程.课程编号B.学生成绩.课程编号 C.课程编号 D.课程名称2下面语句实现向学生表插入一个记录。( 59 )( 60 )学生Values( ( 61 )
9、 )INSERT INTO dbf_name (fname1 , fname2, .) VALUES (eExpression1 , eExpression2, .)(59)A. APPEND B. UPDATEC. DELETE D. INSERT(60)A. INTO B.IN C. TO D. FROM(61)A.,张三,男,会计,1983-10-28B. ,张三,男,1983-10-28,会计C.,张三,男,1983-10-28,会计D.,张三,男,1983-10-28,会计3.下面程序的功能是:求两个数最小公倍数。SET TALK OFFCLEARINPUT A= TO AINPUT
10、 B= TO BK=A*BDO WHILE KAIF ( 62 ) X=KENDIF ( 63 )ENDDO?两数的最小公倍数是:,( 64 )RETURN (62) A.MOD(K,A)=0 OR MOD (K,B)=0B.MOD(K,A)=0 AND MOD(K,B)=0C.INT(K/A)=0 OR INT(K/B)=0D.INT(K/A)=0 AND INT(K/B)=0(63) A. K=K-1 B. K=K+1 C. K=A D. K=B(64) A. A B. B C. X D. K4. 执行下面程序段后,输出的结果是( 65 )。 A=60 B=0 DO CASE CASE A
11、=10 AND B168 THEN B=168 ENDIF CASE A30 B=50+(A-10)*2 IF B138 THEN B=138 ENDIFENDCASE?B(65) A. 50 B. 80 C. 138 D. 1685执行下面程序段后,输出的结果是?( 66 )。S=0 I=0FOR I=0 TO 10 I=I+2 S=S+IENDFOR?S(66)A10 B. 26 C. 42 D. 556. 执行下面程序段后,输出的结果是( 67 )。 S=0 I=0 DO WHILE I=10I=I+2S=S+IENDDO?S(67)A10 B. 26 C. 42 D. 55第(68)(
12、70)选择题基于下面给定的数据表:BOOKS.DBF,其结构和数据如下:书本名称书本代码出版社作者定价类型数量C程序设计00001清华大学谭浩强12.5计算机20数据结构00002清华大学李敏19.0计算机60编译原理00003科技大学陈火旺21.0计算机20多媒体计算机00004北京大学张建伟50.0多媒体50高等数学00005高等教育王斌20.0数学307. 执行下面程序段后,输入的结果是( 68 )。 SET TALK OFF USE BOOKS GO TOP LOCATE FOR 出版社=清华大学 CONTINUE SKIP 2 ?RECNO()(68) A .2 B.3 C.4 D.
13、58.执行下面程序段后,下面有关输出结果的描述中正确的是( 69 )。 SET TALK OFF USE BOOKSGO TOPDO WHILE NOT EOF() IF 类型=计算机? 书本名称ENDIFSKIPENDDO(69)A. 显示了二本书名B. 显示了三本书名 C. 显示了五本书名D. 没有显示一本书名9. 执行下面程序段后,输出的结果是( 70 )。 USE BOOKS GO TOP SUM 数量*定价 TO A FOR 类型计算机 ?A(70) A. 3100 B. 1810 C. 4910 D. 前面的结果都不是1分析下面程序的运行结果:x=2 : y=3 : z=4?x,y
14、,z &输出结果( 56 )Do Sub?x,y,z &输出结果( 57 )Return*子程序文件名:Sub.Prg*Procedure sub?x,y,z &输出结果( 58 )x=1?x,y,z &输出结果( 59 )Private x,yx=5 : y=6 : z=7?x,y,z &输出结果( 60 )Return(56)A2 2 4 B2 3 4C3 3 4 D2 4 3(57)A2 2 4 B2 3 4C1 3 7 D2 4 3(58)A2 2 4 B2 3 4C3 3 4 D2 4 3(59)A2 2 4 B2 3 4C3 3 4 D1 3 4(60)A5 6 7 B6 7 6
15、C2 3 4 D2 4 32下面程序的功能是:求1000以内被7整除又能被4整除的整数的个数及其累加和。Set talk offstore ( 61 ) to n,sfor k=7 to 1000 if ( 62 ) then n=n+1 ( 63 ) endif( 64 )?个数=,n?累加数=,sReturn(61)A0 B1 C3 D2(62)Aint(k/7)=k/7 B. int(k/7)=k/7 or int(k/4)=k/4 C. int(k/7)=k/7 And int(k/4)=k/4 D. int(k/7)=k/7=int(k/4)=k/4(63)As=s+k Bk=k+s
16、Cs=k Ds=s+1(64)Aenddo Bendscan CNext Dendw3统计表文件RSDA.DBF中女职工的人数(主要字段:BH(编号 C)、XB(性别 C)。Set talk offuse rsdaclearn=0scan all ( 65 ) n=n+1( 66 )?女性职工人数=+str(n,3)Use Return(65)AXB=”女” BFOR XB=”女”CREST DXB(66)AEndif BendforCendscan Dendw4在一个名为“中国教育在线”,的表单中设计一个命令按钮,该表单运行时居于VF主窗口的中央,单击命令按钮,即可跳转到中国教育在线站点(网
17、址是:);用鼠标左键双击该表单,释放该表单,其代码如下:Height=60Left=50Top=60width=200( 67 )=.T.caption=( 68 )Procedure Command1.clickthisform.hyperlink1.( 69 )()endProcProcedure ( 70 ) thisform.releaseendproc(67)AAutosize BBox CAutocenter DBackcolor(68)A B”中国教育在线”C“标签” D表单(69)ALink BLink ToCNavigate DNavigateTo(70)A中国教育在线.Cl
18、ick BCommand1.ClickC中国教育在线.DblclickDCommand1.DblClick1下面表单的功能是:当单击命令按钮“计算”时,计算T=1!+2!+10!的值,并把T值在文本框中显示出来,命令按钮的Click事件代码如下。t=0p=( 56 )For i=1 to 10 p=p*i t=( 57 )Endforthisform.text1.value=( 58 )(56)A0 B1 Ci Dt(57)At*p Bp*p Ct+p Dt+p*p(58)At Bp Ci Dt*p2当前目录下有一Stu数据表,表中有“学号(C,8)、姓名(C,6)”等字段,下面程序的功能是:
19、根据输入的姓名对表文件进行查询直到不继续查询为止。Set talk off( 59 )store space(6) to xmindex on 学号 to xh( 60 )accept 输入姓名: to xmLocate For 姓名=xmif not eof() displayelse ?查无此人endifwait 继续吗? to ynif upper(yn)=N ( 61 )else ( 62 )endifenddo(59)AUse BUse Stu Cxh=” DUse Student(60)ADo While Not Eof() BDo While Not Bof()CDo While
20、 .T. DDo While .F.(61)AExit Bloop CQuit DEnd(62)AExit BLoop CQuit DEnd3给定“订贷管理”数据库中的两个表如下: 仓库(仓库号、城市、面积)职工(仓库号、职工号、工资) 下面查询语句实现检索仓库号、职工号、城市和工资信息,并且要求先按仓库号升序排序,再按工资降序排序。Select 仓库.仓库号,仓库.城市,职工.职工号,职工.工资; From 订货管理!仓库 ,订货管理!职工;( 63 )仓库.仓库号=职工.仓库; & 连接条件( 64 )仓库.仓库号,职工.工资( 65 )&排序(63)Awhere BOn CAs DTo(
21、64)AGroup By BWhere COrder By DHaving(65)AASC BDrop COrder DDesc4设有12个结构完全相同的表文件Wy01、Wy02Wy12。下列程序的功能是:是顺序打开每一个表文件并浏览。g=1Do While g13 ( 66 ) Case g10 gw=wy0+( 67 ) CaseElse gw=wy+( 68 ) Endcase Use ( 69 ) Browse ( 70 ) UseEnddo(66)ADo BDo CaseCCase DDo While .T.(67)AStr(g,1) BStr(g,2)Cg Dstr(g)(68)A
22、Str(g,1) BStr(g,2) Cg Dstr(g)(69)Agw B$gwC&gw D#gw(70)AContinue BSeekCg=g-1 Dg=g+11“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身(如153=13+53+33)。程序中的K代表三位数,M、N、和P分别代表百位、十位和个位上的三个数字。SET TALK OFFCLEARFOR K=100 TO 500 S=STR(K,3) M=VAL( 1 ) N=VAL( 2 ) P=VAL( 3 ) IF K=M3+N3+P3 ?K ENDIFENDFORSET TALK ONRETURN(1)ALEFT(S,2)
23、 BLEFT(S,1)CSUBS(S,2,1) DRIGHT(S,1)(2)ALEFT(S,2) BLEFT(S,1)CSUBS(S,2,1) DRIGHT(S,1)(3)ALEFT(S,2) BLEFT(S,1)CSUBS(S,2,1) DRIGHT(S,1)2下图所示表单的功能是:计算S=1! + 1/2! + 1/3! + +1/N!的值。表单运行时,单击“计算”命令按钮后,S的值在文本框中显示出来。命令按钮的代码如下。INPUT 输入项数N的值: TO NS=1P=( 1 )FOR I=2 TO N P=P*I S=( 2 )ENDFORTHISFORM.TEXT1.VALUE=( 3
24、 )(1)A0 B1 CI DS(2)A1/S*P B1/P*P CS+1/P DS+1/P*P(3)AP BN CI DS3设某年级期未考试成绩已存入数据库CHJ.DBF(含学号、姓名、总分等字段)中,下面程序的功能是:查找总成绩最高的学生 ,并将其学号、姓名和总分输出。USE CHJXH=学号XM=姓名ZF=总分DO WHILE NTO EOF() ( 1 ) IF ( 2 ) ( 3 ) ( 4 ) ZF=总分 ENDIFENDDO?XH,XM,ZFUSERETURN(1)ASKIP BSKIP 0CSEEK DSEEK 0(2)AZF=总分 BZF总分CZF总分 DZF总分(3)AXH
25、学号CXH=学号 DXH学号(4)AXM=姓名 BXM=姓名CXM=”姓名” DXM=姓名4假设图书馆理数据库中有3个表,图书.DBF、读者.DBF、和借阅.DBF。它们的结构分别如下:图书(总编号C(6),分类号C(8),书名C(6),出版单位C(20),单价N(6,2))读者(借书证号C(4),单位C(8),姓名C(6),性别戏),职称C(6),地址C(20))借阅(借书证号C(4),总编号C(6),借书日期D(8))(1)下面语句实现在藏书查询“高等教育出版社”和“科学出版社”的图书。 SELECT 书名,作者,出版单位; FROM 图书管理!图书; WHERE 出版单位( 1 )A=”
26、高等教育出版社” OR 出版单位=”科学出版社”B=”高等教育出版社” AND 出版单位=”科学出版社”C”高等教育出版社” AND ”科学出版社”D”高等教育出版社” OR ”科学出版社”(2)下面语句实现查询所藏图书中,各个出版社的图书最高单价、平均单价和册数。 SELECT 出版单位,MAX(单价),AVG(单价),( ); FROM 图书管理!图书; ( )出版单位 ACOUNT * BCOUNTCCOUNT(*) DCOUNT(ALL) AGROUP BGROUP BYCHAVING DORDER BY(3)下面语句查询借阅了两本和两本以上图书的读者姓名和单位。 SELECT 姓名,
27、单位; FROM 图书管理!读者; WHERE 借书证号 IN ( SELECT ( ) FROM 图书管理!借阅; GROUP BY 借书证号 () COUNT(*)=2 ) A姓名 B借书证号C单位 D读者 AON BGROUP BYCORDER BY DHAVING1阅读下列程序,写出要求的结果 DIME AA(10),BB(8,10) AA(5)=”7890” BB(5,10)=18 ?AA(10) 显示的结果为( 1 ) AA=5 STORE 5 TO BB AA(1)=AA(5)+AA(10)+BB(1,5) ?AA(1)+BB(5,10) 显示的结果为( 2 ) BB(1,1)=
28、BB(1,1)+BB(5,10) ?BB(1,1)+AA(3,5) 示的结果为( 3 ) RETURN(1)A 0 B “” C 7890 D .F.(2)A 20 B 10 C 30 D 15(3)A 20 B 15 C 40 D 102表文件“学生.DBF”有一个性别字段。下面程序的功能是:逐个显示性别为“女”的学生记录。 USE 学生 DO WHILE ( 1 ) IF 性别”女” SKIP ( 2 ) ENDIF DISPLAY ( 3 ) ENDDO USE SET TALK ON RETURN(1)A EOF() B BOF()C NOT EOF() D NOT BOF()(2)A
29、 EXIT B ELSEC NEXT D LOOP(3)A NEXT 1 B SKIPC SKIP 2 D NEXT 23设有STUD1.DBF(含有学号、姓名、性别等字段)和STUD2.DBF(含学号、数学、物理等字段)。下面程序的功能是对该两表进行关联并可反复查询。USE STUD1SELECT 2USE STUD2INDEX ON 学号 TO ST2SELECT 1SET REALATION TO ( 1 ) INTO BDO WHILE .T. CLEAR ACCEPT “输入查询人姓名:”TO ( 2 ) LOCATE FOR 姓名=XM IF ( 3 ) DISP 学号,姓名,性别
30、,B.数学,B.物理 ELSE ? “查无此人!” WAIT LOOP ENDIF WAIT “继续查询吗?” TO Y1 IF UPPER(Y1)=”N” ( 4 )ENDDO USE SET TALK ON RETURN(1)A 学号 B 姓名 C 性别 D XH(2)A 姓名 B姓名C 姓名 D XM(3)A FOUND B FOUND() C.T. D .F.(4)A LOOP B EXITC WAIT D GOTO4假设教学管理数据为中有3个表,S.DBF、SC.DBF、C.DBF。它们的结构分别如下: S(S#,SNAME,AGE,SEX)(学生号,学生名,年龄,性别) SC(S#
31、,C#,GRADE)(学生号,课程号,成绩) C(C#,CNAME,TEACHER)(课程号,课程名,教师)(1)查询LIU老师所授课程的课程号和课程名 SELECT C#,CNAME FROM C WHERE ( ) A TEACHER=”LIU” B TEACHER=LIU C 教师=LIU D 教师=LIU(2)检索至少选修LIU老师所授课程中一门课程的女生姓名 SELECT SNAME FROM ( 1 ); WHERE ( 2 ) SEX=FAND TEACHER=LIU A S,SC B S,C C SC,C D S,SC,C A S.SC#=SC.S#B SC.C#=C.C#C S.S#=SC.S# AND SC.C#=C.C#D S.S#=C.C#(3)检索WANG同学没有选修的课程的课程号。SELECT C# FROM C WHERE ( 1 ); (SELECT * FROM ( 2 ); WHERE S.S#=SC.S# AND SC.C#=C.C# AND SNAME=WANG) A NOT B NOT EXISTS C EXISTS D A S B SC C S,SC D C
限制150内