VF程序设计典型题目
- 格式:doc
- 大小:36.00 KB
- 文档页数:30
vf理论考试题及答案一、单项选择题(每题2分,共10题,满分20分)1. VF理论中,以下哪个是正确的函数定义?A. Function MyFuncB. Function MyFunc()C. Function MyFunc(参数1, 参数2)D. Function MyFunc(参数1; 参数2)答案:B2. 在VF中,以下哪个是正确的变量声明方式?A. Dim a, bB. Dim a, b As IntegerC. Dim a, b As StringD. Dim a, b As Double答案:B3. VF中的数组声明,以下哪个是正确的?A. Dim array[10]B. Dim array(10)C. Dim array(1 to 10)D. Dim array(10 to 1)答案:C4. 下面哪个是VF中的循环结构?A. ForB. WhileC. DoD. All of the above答案:D5. 在VF中,如何打开一个表单?A. Use 表单名B. Open 表单名C. Do 表单名D. Load 表单名答案:A二、多项选择题(每题3分,共5题,满分15分)6. VF中可以使用哪些类型的数据?A. NumericB. CharacterC. DateD. Logical答案:A, B, C, D7. 下列哪些是VF中的数据库对象?A. TableB. FormC. ReportD. Query答案:A, B, C, D8. VF中,哪些是合法的表达式?A. 5 + 3B. "Hello" + "World"C. 5 > 3D. 5 AND 3答案:A, C9. 在VF中,以下哪些是表单控件的事件?A. ClickB. LoadC. InitD. Close答案:A, B, C, D10. VF中,哪些是合法的文件操作命令?A. COPYB. DELETEC. RENAMED. ALL OF THE ABOVE答案:D三、填空题(每题2分,共5题,满分10分)11. 在VF中,使用________命令可以创建一个新的数据库。
2014年春季学期 《VF 程序设计》试卷A一、单项选择题(每空1分,共35分)1.表单的NAME 属性是____。
A.显示在表单标题栏中的名称B.运行表单程序时的程序名C.保存表单时的文件名 D .引用表单对象时的名称2.在VFP6.0中,将字符型数据转换成日期型数据的函数是____。
A .DTOC() B .CTOD() C . DA TE() D . STR()3. 执行命令INPUT ”请输入数据:”TO XYZ 时,可以通过键盘输入的内容包括_____ A) 字符串 B) 数值和字符串C) 数值、字符串和逻辑值 D) 数值、字符串、逻辑值和表达式 4.下列四组基类中,同一组中各个基类全是容器型的是____。
A.Grid,Column,TextBoxmandButton,OptionGroup,ListBoxmandGroup,DataEnvironment,HeaderD.Form,PageFrame,Column 5.字段的默认值保存在____ A.表的索引文件中 B .数据库文件中 C.项目文件中 D .表文件中 6.下列叙述中含有错误的是____。
A.一个数据库表只能设置一个主索引 B.唯一索引不允许索引表达式有重复值C.候选索引既可以用于数据库表也可以用于自由表D.候选索引不允许索引表达式有重复值 7.表移出数据库后,仍然有效的是____ A.记录的验证规则 B .表的验证规则C.字段的默认值D.结构复合索引中的候选索引8.菜单文件经过生成以后形成的菜单程序文件的扩展名是____ A.MPR B.MNX C.MPX D.MND 9.下列叙述中含有错误的是____。
A.一个表可以有多个外部关键字 B.数据库表可以设置记录级的有效性规则C.永久性关系建立后,主表记录指针移动将使子表记录指针相应移动D.对于临时性关系,一个表不允许有多个主表 10.下列对象中,属于容器类的是____A.文本框 B .组合框 C .页框 D.选项按钮11.对于自由表而言,不能创建的索引类型是____。
VF试题及答案(一)一、选择题下列各题A) 、B) 、C) 、D) 四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1) DBMS的含义是:A) 数据库系统 B) 数据库管理系统C) 数据库管理员 D) 数据库(2)从关系模式中指定若干个属性组成新的关系的运算称为:A) 联接 B) 投影 C) 选择 D) 排序(3)对于“关系”的描述,正确的是:A) 同一个关系中允许有完全相同的元组B) 同一个关系中元组必须按关键字升序存放C) 在一个关系中必须将关键字作为该关系的第一个属性D) 同一个关系中不能出现相同的属性名(4)在表设计器的“字段”选项卡中可以创建的索引是A) 唯一索引 B) 候选索引 C) 主索引 D) 普通索引(5)在程序中不需要用public等命令明确声明和建立,刻直接使用的内存变量是A) 局部变量 B) 公共变量 C) 私有变量 D) 全局变量(6)扩展名为dbf的文件是A) 表文件 B) 表单文件 C) 数据库文件 D) 项目文件(7)下列程序段的输出结果是CLEARSTORE 10 TO ASTORE 20 TO BSET UDFPARMS TO REFERENCEDO SWAP WITH A,(B)A,BPROCEDURE SWAPPARAMETERS X1, X2TEMP=X1X1=X2X2=TEMPENDPROCA) 10 20 B) 20 20 C) 20 10 D) 10 10(8)使用调试器调试第(7)小题的程序,如果想在过程SWAP执行时观察X1的值,可以在其中安置一条命令,程序执行到该命令时,系统将计算X1的值,并将结果在调试输出窗口中显示,这条命令的正确写法是:A) DEBUGOUT X1 B) DEBUG X1 C) OUT X1 D) TEST X1(9) 设X=10, 语句?VARTYPE ("X")的输出结果是A) N B) C C) 10 D) X(10) 表达式LEN(SPACE(0))的运算结果是A) .NULL. B) 1 C) 0 D) ""(11) 为表单建立了快捷菜单mymenu,调用快捷菜单的命令代码DO mymenu.mpr WITH THIS 应该放在表单的那个事件中?A) Destory事件B) Init事件C) Load事件D) RightClick事件(12)(24)题使用的数据表如下:当前盘当前目录下有数据库:学院.dbc,其中有“教师”表和“学院”表。
1、从键盘上输入3个不同的数,将他们从大到小排序。
请将下列程序填写完整。
(提示:利用三个if…endif语句实现,其中交换时用到的临时内存变量为t)。
set talk offinput "请输入第一个数:" to ainput "请输入第二个数:" to binput "请输入第三个数:" to c**********Program**********if a<bt=aa=bb=tendifif a<ct=aa=cc=tendifif b<ct=bb=cc=tendif********** End **********?a,b,cReturnSet talk on2、求[1,100]内所有能被3或被5整除的数以及个数。
(提示:利用do while语句实现)。
Set talk offclearn=0i=1**********Program**********Do while i<=100IF MOD(i,3)=0 .OR. MOD(i,5)=0**int(i/3) = i/3 .OR. int(i/5) = i/5?? in=n+1Endifi=i+1enddo********** End **********? "满足条件的数的个数为:",nSet talk onReturn3、求自然数5的阶乘。
请将下列程序填写完整。
(用FOR循环语句)SET TALK OFFS = 1M = 1**********Program**********FOR M=1 TO 5S=S*MENDFOR********** End **********? SSET TALK ONRETURN4、从键盘上输入一个数n,计算n的阶乘。
Set talk offInput "请输入n的值:" to NS=1**********Program**********For I=1 to NS=S*IEndfor********** End **********?SSet talk onReturn5、求连乘数1*2*3*4*……,当积大于720时退出程序。
为节省空间,我将答案都放在了Program和End中间了,大家可以学学看哦!(以下各题答案请在Program和End中间填写)1.用循环程序求出1~15之间能被3整除的整数的阶乘和存入变量OUT中,要求用For循环语句实现。
SET TALK OFFSET LOGERRORS ONOUT=0**********Program**********T=1FOR N=1 TO 15T=T*NIF N%3=0OUT=OUT+TENDIFENDFOR?OUT********** End **********SET TALK ONDO YZJ17 WITH OUTRETURN2.. 编程判断一个整数w的各位数字平方之和能否被5整除, 可以被5整除则返回1,否则返回0。
将结果存入变量OUT中,要求用Do While语句实现。
SET TALK ONSET LOGERRORS ON? "输入一个整数:w=39"OUT=-1w=39**********Program**********S=0DO WHILE W>0S=S+(W%10)* (W%10)W=INT(W/10)ENDDOIF S%5=0Out=1ELSEOUT=0ENDIF?OUT********** End **********DO YZJ WITH OUTSET LOGERRORS OFFSET TALK OFF3.编程当n=10时,计算如下表达式a10的值。
a1=1,a2=1/(1+a1),a3=1/(1+a2),......an=1/(1+a(n-1))。
将结果存入变量OUT中,要求用For循环语句实现。
SET TALK ONSET LOGERRORS ONOUT=-1**********Program**********a=1for i=1 to 9a=1.0/(1+a)endforout=a?out********** End **********DO YZJ WITH OUTSET LOGERRORS OFFSET TALK OFF4. 从键盘输入一个整数,输出所有能整除该数,并且本身也能被3整除的数的和。
VF程序设计请注意:1、本考试科目提供一套试题参考答案,进入本门课程点在线考试,随机抽题,如果考试题不是其中试题,千万别点最下面的“完成考试”按钮,立即关闭窗口,重新进入抽题,直到抽到所给这套题为止2、在线考试只有一次机会,成绩为最终考试成绩,抄袭、雷同作业一律按零分处理。
没给答案的可自行发挥,别空题,做完后一定点完成考试显示“答卷结果保存成功”表示提交成功,否则考试结果将无分值请注意:本学期您只有一次在线考试机会,请慎重做答和提交!01:29:42单项选择题第1题以下关于Visual FoxPro的叙述最全面的是(D)本题1分A、Visual FoxPro是一个数据库应用平台软件B、Visual FoxPro是一个数据库应用开发工具C、Visual FoxPro是一个综合应用软件D、Visual FoxPro既是一个数据库应用平台,又是数据库应用开发工具第2题关系数据库系统中所使用的数据结构是(D )本题1分A、树B、图C、表格D、二维表第3题把各个数据库文件联系起来构成一个统一的整体,在数据库系统中需要采用一定的( D)本题1分A、操作系统B、文件系统C、文件结构D、数据结构第4题用二维表形式表示的数据模型是(B )本题1分A、层次数据模型B、关系数据模型C、网状数据模型D、网络数据模型第5题关系数据库管理系统的3种基本关系运算不包括( A) 本题1分A、比较B、选择C、连接D、投影第6题下列关于数据库系统的叙述中,正确的是(A )本题1分A、表的字段之间和记录之间都存在联系B、表的字段之间和记录之间都不存在联系C、表的字段之间不存在联系,而记录之间存在联系D、表中只有字段之间存在联系第7题使用数据库技术进行人事档案管理是属于计算机的(C )本题1分A、科学计算应用B、过程控制应用C、数据处理应用D、辅助工程应用第8题在关系理论中,把二维表表头中的栏目称为(C )本题1分A、数据项B、元组C、结构名D、属性名第9题在关系模型中,实现“关系中不允许出现相同的元组”的约束是通过(B ) 本题1分A、候选键B、主键C、外键D、超键第10题数据库系统的构成为:数据库、计算机硬件系统、用户和(D )本题1分A、操作系统B、文件系统C、数据集合D、数据库管理系统第11题数据库系统的用户对数据库的查询和存储操作使用的语言是( D )本题1分A、自然语言B、自含语言C、数据描述语言D、数据操作语言第12题DBAS指的是(C )本题1分A、数据库管理系统B、数据库系统C、数据库应用系统D、数据库服务系统第13题用于实现对数据库进行各种数据操作的软件称为(C ) 本题1分A、数据软件B、操作系统C、数据库管理系统D、编译程序第14题数据库DB、数据库系统DBS和数据库管理系统DBMS之间的关系是(B )本题1分A、DBMS包括DB和DBSB、DBS包括DB和DBMSC、DB包括DBS和DBMSD、DB、DBS和DBMS是平等关系第15题下列关于数据库系统的叙述中,正确的是(D )本题1分A、数据库系统只是比文件系统管理的数据更多B、数据库系统中数据的一致性是指数据类型一致C、数据库系统避免了数据冗余D、数据库系统减少了数据冗余第16题Visual FoxPro6。
1. 求园的面积〔要求判断半径是否合理〕CleaInpu ‘r=’ to rIf r>0S=3.14*r*r"sElse"’半径错误!’Endif2. 求分段函数Y 的值CleaInpu ‘If *>0Y=2**+5ElseIf *=0Y=*ElseY=abs(*)EndifEndif"y3. 输入一个百分制成绩判断其等级〔优/良/中/及格/不及格〕CleaInpu ‘cj=’ to cjDo caseCase cj>=90"’优’Case cj>=80"’良’Case cj>=70"’中’Case cj>=60"’及格’Orth"’不及格’Endcase4. 输入假设干个〔个数不定〕百分制成绩判断其等级〔优/良/中/及格/不及格〕CleaInpu ‘请输入处理几个人的成绩:’ to nFor i=1 to nInpu ‘cj=’ to cjDo caseCase cj>=90"’优’ 2*+5 *>0 * *=0 | * | *<0Case cj>=80"’良’Case cj>=70"’中’Case cj>=60"’及格’Orth"’不及格’Endcaseendfor5.求S=1+2+3. . . . . .+100CleaS=0For i=1 to 100S=s+iEndfor"s6.求S=1×2×3. . . . . .×100Cleap=1For i=1 to 100p=p*iEndfor"p7.求S=1+3+5.. . . . .+99CleaS=0For i=1 to 99 step 2S=s+iEndfor"s8.求S=1-2+3-4. . . . . .-100CleaS=0For i=1 to 100S=s+(-1)^(i+1)*iEndfor"s9.求S=1+1/2+2/3+3/5. . . . . .前10项之和CleaS=0A=1B=1For i=1 to 10S=s+a/bT=aA=bB=t+bEndfor"s10. 求S =1!+2!+3!. . . . . .+10!CleaS=0P=1For i=1 to 10P=p*iS=s+pEndfor"s11. 对学生表中所有入学成绩≥650分的学生免去贷款CleaUse 学生Scan for 入学成绩>=650 .and. 贷款否=.t.Repl 贷款否 with .f.EndscanUse12. 输出图形Clea For i=1 to 4 For j=1 to i""’*’ Endfor " EndforCleaFor i=1 to 4For j=1 to 4-i""’’ &&有一个空格EndforFor j=1 to 2*i-1""’*’Endfor"EndforCleaFor i=1 to 4For j=1 to 4-i""’’ &&有一个空格Endfor * **** * ******** **** ** *** *** ******* *** *** ** ***** ****** ** **** * ******* ***** *For j=1 to i""’*’Endfor"Endfor13.判断一个整数是否素数CleaInpu ‘*=’ to *For i=2 to *-1If mod(*,i)<>0LoopElseE*itEndifEndforIf i>*-1"*,’是素数’Else"*,’不是素数’Endif14.判断十个整数是否素数CleaFor j=1 to 10Inpu ‘*=’ to *For i=2 to *-1If mod(*,i)<>0LoopElseE*itEndifEndforIf i>*-1"*,’是素数’Else"*,’不是素数’EndifEndfor15.找出两个数的大数和小数CleaInpu ‘*=’ to *Inpu ‘y’ to yIf *>y"*,’大’,y,’小’Else"y,’大’,*,’小’Endif16.找出三个数的最大数和最小数CleaInpu ‘*=’ to *Inpu ‘y’ to yInpu ‘z’ to zIf *<yt=**=yy=tElseIf *<zt=**=zz=tendifendifif y<zt=yy=zz=tendif"*,’是最大数’,z,’是最小数’17.找出十个数的最大数和最小数CleaDime a(10)For i=1 to 10Inpu to a(i)EndforMa*=a(1)Min=a(1)For i=2 to 10If ma*<a(i)Ma*=a(i)ElseIf min>a(i)Min=a(i)EndifEndifEndfor"ma*,min18.找出2×3矩阵中的最大数和最小数cleadime a(2,3)for i=1 to 2for j=1 to 3input ‘a(‘+str(I,2)+’,’+str(j,2)+’)=’ to a(I,j) endforendforma*=a(1,1)min=a(1,1)for i=1 to 2for j=1 to 3if ma*<a(I,j)ma*= a(I,j)elseif min> a(I,j)min= a(I,j)endifendifendforendfor"’ma*=’,ma*,’min=’,min19.对三个整数从大到小排序ClearInput ‘a=’ to aInput ‘b=’ to bInput ‘c=’ to cIf a<bT=aA=bB=tElseIf a<ct=aA=cc=tendifendifIf b<cT=bA=cc=tendif"a,b,c20.对十个整数从大到小排序〔用选择法和起泡法两种方法〕选择法:ClearDime a(10)For i=1 to 10Input to a(i)EndforFor i=1 to 9Ma*=a(i)Num=iFor j=i+1 to 10If ma*<a(j)ma*=a(j)Num=jEndifEndforIf i<>numt=A(i)a(i)=a(num)a(num)=tEndifEndforFor i=1 to 10""a(i),' 'Endfor起泡法:ClearDime a(10)For i=1 to 10Input to a(i)EndforFor i=1 to 9For j=1 to 10-iIf a(j)<a(j+1)t=A(j)a(j)=a(j+1)a(j+1)=tEndifendforEndforFor i=1 to 10""a(i),' 'Endfor21.输出Fibonacci〔斐波那契〕数列的前十项ClearDime a(10)a(1)=1a(2)=1For i=3 to 10a(i)=a(i-1)+a(i-2)EndforFor i=1 to 10""A(i)Endfor22.输出辉三角的前十行ClearDime a(10,10)For i=1 to 10A(I,1)=1A(I,i)=1EndforFor i=3 to 10For j=2 to i-1A(I,j)=a(i-1,j)+a(i-1,j-1)EndforEndforFor i=1 to 10For j=1 to i""A(I,j)Endfor"Endfor23.对2×3矩阵转置CleaDime a(2,3),b(3,2)for i=1 to 2for j=1 to 3input to a(I,j)endforendforfor i=1 to 3for j=1 to 2b(I,j)=a(j,i)endforendforfor i=1 to 3for j=1 to 2""b(I,j)Endfor"endfor24.求三位数中的所有水仙花数〔即指一个三位数,其各位数字立方和等于该数本身〕Cleafor *=100 to 999a=int(*/100)b=mod(int(*/10),10)c=mod(*,10)if *==a*a*a+b*b*b+c*c*c"*Endifendfor25.求100以的所有完数〔即一个数恰好等于除它本身外的所有因子之和〕Cleafor i=3 to 100s=0for j=1 to i-1if mod(i,j)==0s=s+jendifendforif i==s"iendifendfor26.三角形的三边〔从键盘输入〕,求其面积(S^2=p(p-a)(p-b)(p-c), p=(a+b+c)/2)Clearinput 'a=' to ainput 'b=' to binput 'c=' to cif a+b>c and a+c>b and b+c>ap=(a+b+c)/2s=sqrt(p*(p-a)*(p-b)*(p-c))"selse"'三边不能组成三角形'Endif27.求二元方程的根〔分三种情况:两个不等实根,两个相等实根,无实根〕cleainpu 'a=' to a &&a<>0inpu 'b=' to b &&b<>0inpu 'c=' to ci=b*b-4*a*cif i<0""方程无实根!"elseif i==0r=(-b)/(2*a)""方程有两个相等实数根:",relse*1=(-b+sqrt(i))/(2*a)*2=(-b-sqrt(i))/(2*a)""方程有两个不相等实数根:",*1,*2endifendif28.输入任意一个五位整数,前后对应位置上的数据进展交换重新排列〔即逆序排列〕〔例:25984→48952〕cleadime a(5)inpu to ba(1)=int(b/10000)a(2)=mod(int(b/1000),10)a(3)=mod(int(b/100),10)a(4)=mod(int(b/10),10)a(5)=mod(b,10)for i=1 to int(5/2)t=a(i)a(i)=a(6-i)a(6-i)=tendforc=a(1)*10000+a(2)*1000+a(3)*100+a(4)*10+a(5)"b,c29.找出一个3*3矩阵的“鞍点〞,即该位置上的元素在该行上最大,在该列上最小〔也有可能没有鞍点〕cleadime a(3,3)flag=.t.for i=1 to 3for j=1 to 3input 'a('+str(I,2)+','+str(j,2)+')=' to a(i,j)endforendforfor i=1 to 3ma*=a(i,1)col=1for j=2 to 3if ma*<a(i,j)ma*=a(i,j)col=jendifendformin=a(1,col)row=1for k=2 to 3if min>a(k,col)min=a(k,col)row=kendifendforif ma*==min"a(row,col),'是鞍点,在',row,'行',col,'列'flag=.f.endifendforif flag==.t."'无鞍点'endif30.求S(n)=a+aa+aaa+...+aaa....aaa(其中有n个a)之值,a是一个数字,n和a由键盘键入(例如:2+22+222+22222+22222,此时n=5)cleainpu 'a=' to ainpu 'n=' to ns=0t=afor i=1 to ns=s+tt=a+t*10endfor"s31.把一一元钞票,换成一分、二分和五分硬币,每种至少11枚,问有多少种方案"13cleas=0for a=11 to 100for b=11 to 50for c=11 to 20if a+2*b+5*c=100s=s+1endifendforendforne*t"s32.一只猴子一天从山上摘来一袋桃子,从这天开场,它每天都要把袋中的桃子平分为二堆,吃掉其中的一堆,然后再从剩下的桃中拿出一个解谗,等到第10天,它发现袋中只有一只桃可吃啦,问猴子总共摘了多少桃。
vf模拟考试试题及答案一、选择题(每题2分,共20分)1. VF中,以下哪个函数用于判断变量是否为数字?A. IsNumericB. IsAlphaC. IsDateD. IsEmpty答案:A2. VF中,以下哪个函数用于连接两个字符串?A. ConcatB. ConnectC. JoinD. Append答案:C3. VF中,以下哪个函数用于计算两个日期之间的天数?A. DateDiffB. DateAddC. DatePartD. DateSerial答案:A4. VF中,以下哪个函数用于获取当前系统时间?A. NowB. GetTimeC. CurrentTimeD. Time答案:A5. VF中,以下哪个函数用于将字符串转换为小写?A. LowerB. LCaseC. LowerCaseD. ToLower答案:B6. VF中,以下哪个函数用于将字符串转换为大写?A. UpperB. UCaseC. UpperCaseD. ToUpper答案:B7. VF中,以下哪个函数用于判断字符串是否为空?A. IsEmptyB. IsNullC. IsBlankD. IsEmptyString答案:D8. VF中,以下哪个函数用于获取字符串的长度?A. LengthB. LenC. SizeD. Count答案:B9. VF中,以下哪个函数用于截取字符串的子串?A. SubStringB. MidC. SubstrD. Slice答案:A10. VF中,以下哪个函数用于替换字符串中的字符?A. ReplaceB. ReplaceAllC. SubstituteD. ReplaceWith答案:A二、填空题(每题2分,共20分)1. VF中,字符串连接运算符是_________。
答案:&2. VF中,逻辑运算符包括_________、_________和_________。
答案:AND, OR, NOT3. VF中,用于声明变量的关键字是_________。
VFP编程题及参考答案1.输入圆的半径,求圆的周长和面积并输出。
解:编写程序如下:clearinput “请输入圆的半径:” to rl=2*3.14159*rs=3.14159*r*r? “圆的周长为:”,l? “圆的面积为:”,s2.输入梯形上底、下底和高的值,求梯形面积并输出。
解:编写程序如下:clearinput "请输入梯形的上底:" to shdinput "请输入梯形的下底:" to xdinput "请输入梯形的高:" to gs=(shd+xd)*g/2? "梯形的面积为:",s3.输入三角形的三边长(设输入的三边a、b、c能构成三角形),求三角形的周长和面积并输出。
(提示:面积=半周长*(半周长-a)*(半周长-b)*(半周长-c)的平方根)解:编写程序如下:clearinput "请输入三角形的第一条边长:" to ainput "请输入三角形的第二条边长:" to binput "请输入三角形的第三条边长:" to cL=(a+b+c)/2s=sqrt(L*(L-a)*(L-b)*(L-c))? "三角形的周长为:",2*L? "三角形的面积为:",s4.输入2个实数,要求按由小到大的次序输出这两个数。
解:编写程序如下:clearinput "请输入第一个实数:" to num1input "请输入第二个实数:" to num2if (num1>num2)? num2,num1else? num1,num2endif5.请编写一个“A类邮件”计费程序,求出邮件的邮资费并输出:“A类邮件”计费规定:当邮件重量小于等于200克时,邮资费为每克0.06元;当邮件重量超过200克时,其中200克,按每克0.06元计费,超过200克的重量,按每克0.03元计费。
1.下列关于数据与信息叙述不正确的是()。
A.数据都可以经过处理得到信息B.信息一定是数据C.数据一定是信息D.信息是经过处理的数据2.下列关系运算中不是单表运算的是()。
A. 选择B. 合并C. 连接D. 投影3.下列描述不正确的是()。
A. 数据库减少了数据冗余B. 数据库能避免一切数据重复C. 数据库具有较高的数据独立性D. 数据库中的数据可以共享4.Visual FoxPro 6.0中要隐藏命令窗口的组合键是()。
A. CTRL+F2B. CTRL+F4C. CTRL+F1D. CTRL+F35.在Visual FoxPro环境下,要隐藏命令窗口,可选择“窗口”菜单中的命令。
A. 清除B. 隐藏C. 循环D. 命令窗口6.在Visual FoxPro 中,关于字段值为空值(NULL)的描述中正确的是()。
A. 不支持字段值为空值B. 空值表示字段还没有确定值C. 空值等同于空字符串D. 空值等同于数值07.Y1="大学计算机基础",那么?SUBS(Y1,LEN(y1)-3,4)命令的执行结果是()。
A. 9B. 12C. 基础D. 计算机8.命令?round(42.1998,2)的结果是( )。
A. 42.00B. 42.20C. 42.19D. 42.20009.下列说法不正确的是( )。
A. recno()的功能是测试当前或指定工作区中数据表的当前记录号B. eof()的功能是测试当前或指定工作区中数据表的记录指针是否指向最后一条记录之后C. reccount()的功能是测试当前或指定工作区中数据表的记录个数,不包含逻辑删除的记录D. bof()的功能是测试当前或指定工作区中数据表的记录指针是否指向第一个记录之前10.关于函数atc()和at()的说法正确的是()。
A. atc()和at()的功能完全相同B. 以上说法都不正确C. atc()区分字母的大小写D. at()区分字母的大小写11.函数MAX(1,-90)的结果值是()。
VFP程序设计复习题一、选择题1、Visual FoxPro支持面向对象程序设计,在Visual FoxPro中,对象可区分为和容器两种。
A.表格B.控件 C.类 D.数据2、假设在某表单中设置一个命令按钮,要求在该按钮上显示“确定”二字,于是应修改该命令按钮的属性。
A.Name B.Caption C. Visible D.ToolTipText3、现要求建立一个表单,使得该表单运行时,用户可通过它进行数据输入,为此在建立表单时,至少要在该表单中设置下列的控件。
A.CommandButton B.Timer C. TextBox D.Image4、设x=”y+”,y=5,在命令窗口执行命令? &x.y后,屏幕上显示。
A.x.y B.y+5 C.25 D.105、函数STR(-304.75)的值是。
A、-304B、304C、305D、 -3056、连续执行以下命令之后,最后一条命令的输出结果是。
SET EXACT OFFX="A "?IIF(x="A",X-"BCD",X+"BCD")A、AB、BCDC、A BCDD、ABCD7、()数据在内存中占用1个字节。
A.字符型B.日期型C.货币型D.逻辑型8、在命令窗口执行命令store 0 to A后,紧接着输入并执行命令(),Visual FoxPro就会报错。
A.A<>0=A B.A=0=A C.A=0<>A D.A=09、在命令窗口输入并执行命令? {^2008-5-31}-{^2008-4-30}后,屏幕上将显示()。
A.1 B.31 C.01/01/08 D.05/01/089、在命令窗口输入并执行命令? “大学” $ “大学生”后,屏幕上将显示()。
A.大学B..T. C.大学生D..F.10、设X=”654”+SPACE(2),Y=”321”,则X-Y的值与()相等。
231 1 若某整数平方等于某两个正整数平方之和的正整数称为弦数。
例如:由于3^2+4^2=5^2,则5为弦数,求[100,200]之间最大的弦数。
130 2011232 2 求方程8x-5y=3,在|x|<=150, |y|<=200内的整数解。
试问这样的整数解中|x|+|y|的最大值是多少? 323 2011233 3 若两素数之差为2 ,则称两素数为双胞胎数,问[31,600]之间有多少对双胞胎数。
21 2011234 1 若某整数N的所有因子之和等于N的倍数,则N称为多因子完备数,如数28,其因子之和1+2+4+7+14+28=56=2*28,28是多因子完备数。
求[1,500]之间有多少个多因子完备数。
5 2012235 2 求方程8x-5y=3,在|x|<=150, |y|<=200内的整数解。
试问这样的整数解中x+y的最大值是多少? 314 2012236 3 一个素数(设为p)依次从最高位去掉一位,二位,三位,……,若得到的各数仍都是素数(注:1不是素数),且数p的各位数字均不为零,则称该数p 为逆向超级素数。
例如,617,17,7都是素数,因此617是逆向超级素数,尽管503,03,3都是素数,但它不是逆向超级素数,因为它包含有零。
试求[100,999]之内的所有逆向超级素数的个数。
39 2012237 1 若某整数N的所有因子之和等于N的倍数,则N称为多因子完备数,如数28,其因子之和1+2+4+7+14+28=56=2*28,28是多因子完备数。
求[1,200]之间有多少个多因子完备数。
4 2013238 2 四位数的各位数字的平方和等于100,问其中最大的一个是多少? 9331 2013239 3 设有十进制数字a,b,c,d和e,它们满足下列式子:abcd*e=bcde (a不等于0, e不等于0或1),求满足上述条件的最大四位数abcd的值。
程序设计操作练习题计算:T=1!+2!+3!+…+10!。
T=0for i=1 to 10S=1for j=1 to iS=S*jendforT=T+Sendfor?"1!+2!+....10!=",T1.某商场的日销售表RQ.DBF包含:营业员代号(DH,N,6)、品名(PM,C,6)、数量(SL,N,2)、单价(DJ,C,7,2)、营业额(YEE,N,9,2),每一笔销售构成数据表中的一条记录,营业额字段为0,编程查询某个营业员全天营业额的程序。
例如:DH PM SL DJ YYE011201 洗衣机 4 1820.00011201 电饭锅8 298.00020301 空调 5 4500.00011201 空调 3 4500.00020301 MP3 1458.00CLEAUSE RQREPL ALL YYE WITH SL*DJ &&营业额=单价*数量D="" && 初始化变量DAccept "请输入营业员代号:" TO DS=0Locate for DH=DDo while Not eof()S=S+YYEContEnddo@12,10 SAY "营业额为:"+STR(S,8,2)RETU3. 逐条显示RSGL.DBF中的记录,显示完一条记录后暂停,出现提示“继续吗(Y/N)?”,用户输入Y(y)则继续显示下一条记录,输入N(n)退出。
clearset talk offuse rsgldo while .not. eof()disp 编号,姓名,性别,职称&&可以使用?输出wait "继续吗(Y/N)?" to YNif UPPER(YN)="N"ExitEndifSkipEnddoUseSet talk onReturn4显示RSGL.DBF中在1966年以后出生的职工记录。
第一章1.试说明数据与信息的区别和联系。
数据是人们用于记录事物情况的物理符号。
信息是数据中所包含的意义。
数据与信息既有区别,又有联系。
数据是表示信息的,但并非任何数据都能表示信息,信息只是加工处理后的数据,是数据所表达的内容。
另一方面信息不随表示它的数据形式而改变,它是反映客观现实世界的知识,而数据则具有任意性,用不同的数据形式可以表示同样的信息,信息只是加工处理后的数据,是数据所表达的内容。
2.什么是数据库、数据库管理系统和数据库系统?数据库是在数据库管理系统的集中控制之下,按一定的组织方式存储起来的、相互关联的数据集合。
数据库管理系统(Database Management System,DBMS)是对数据进行统一的控制和管理,从而可以有效地减少数据冗余,实现数据共享,解决数据独立性问题,并提供统一的安全性、完整性和并发控制功能的系统软件。
数据库系统是把有关计算机硬件、软件、数据和人员组合起来为用户提供信息服务的系统。
3.简述数据库的三级模式结构。
为了有效地组织、管理数据,提高数据库的逻辑独立性和物理独立性,人们为数据库设计了一个严谨的体系结构,数据库领域公认的标准结构是三级模式结构,它包括外模式、模式和内模式。
模式又称概念模式或逻辑模式,对应于概念级。
它是由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图(全局视图)。
外模式又称子模式,对应于用户级。
它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。
内模式又称存储模式,对应于物理级。
它是数据库中全体数据的内部表示或底层描述。
4.数据库系统的特点是什么?特点是数据共享,减少数据冗余,具有较高的数据独立性,增强了数据安全性和完整性保护。
5.实体之间的联系有哪几种?分别举例说明。
(1)一对一联系(1∶1) 例如,一所学校只有一个校长,一个校长只在一所学校任职,校长与学校之间的联系是一对一的联系。
典型程序设计题(附参考答案)1.求1到2000之间,能被3或7整除,并且含有数字5的整数的个数、它们的和、它们的平方根的和(保留2位小数)、以及它们的平方和。
2.求能被3整除且至少有一位数字为5的三位数的个数。
3.求出只要能被2,7,9之一整除的800以内的正整数的个数。
4.求[105,625]间能同时被7和11整除的自然数之和。
求[200,600]间奇数之和。
5.编程序求出1000到2000之间同时满足除3余2和除5余3条件的数的个数。
6.输出[10,100]中除以17的余数和除以5的商相等的整数的个数。
7.统计区间[1000,9999]内所有能被3整除,且千位数字与个位数字之和为8的整数的个数。
8.求在四位数的奇数中,所有各位数字之和是25的倍数的数的和。
9.求出所有能被17整除且不含重复数字的三位数的和。
10.求1到500的偶数立方和与奇数立方和之差。
11.求3+9+27+81+243+...这样的数之和. 若累加数大于500时,则结束累加.12.求1+3+5+7+9+11+...这样的奇数之和.若累加数大于500时, 则结束累加。
13.计算S=1*5*9*13*...*k,直到累乘数k>=25中止。
14.求出1到5000之间的能被5整除的前若干个偶数之和,当和大于500时程序退出。
15.编写程序,s=1+1/2+1/3+…+1/99,保留两位小数。
16.编程求S=1*3+2*4+3*5+...+198*200。
17.设S=1+1/2+1/3+...+1/N,N为正整数。
编程求使S不超过10的最大的N18.求S=8!+9!+10!19.编写程序,求10!20.计算S=3!+5!+7!+...+N!,求直到S>=680000为止的奇数N。
21.s=1!+2!+3!+....+n! 当s大于61000时结束累加,求n。
22.数列xi各元素的值是:x1=1,x2=1+2,x3=1+2+3,.....xn=1+2+3+......+n。
1.3-100的素数 (19)2. (4!+7!)乘以3! (20)3.1!+3!+5!+....+99!= (21)4.3!+5!+7! (21)5.3!+8!+11!的和 (22)6.10~100之间不能被3整除的数的和 (22)7.10~100之间能被3整除的数 (22)8.1000-1100素数和 (23)9.编写分段函数程序 (23)10.计算1!+2!+3!+...+100! .. (24)11. 计算1+2+3+...+100 . (24)12. 输入10个数,找最大值和最小值 (24)13. 找出几个数(此题中为八个)中的最小数 (25)14. 一万个i★you (26)15. 未知题目 (26)16.99乘法表 (26)17. 编程序求出1-200以内的能被7整除的数的平方和 (27)18. 编程序求1~99的平方根的和并输出结果。
(保留小数点两位)661.46 (27)19.编程序统计1~1000能被3整除的数的个数。
333 2720. 编程序求出1~100所有整数的平方和并输出结果。
338350 (27)21. 编程序求出1到5000之间的能被5整除的前若干个偶数之和,当和大于500 时程序退出。
550 (28)22. 编程序求在3000以内被17或者23整除的正整数数的个数。
299 (28)23. 已知一个数列的前3个数为0,0,1,以后每个数为前3个数的和,编程序求此数列的第36个数。
334745777 .28 24. 编程序求出100到200之间同时满足除3余2和除5余3条件的数的个数。
6 (29)25. 编程序求出2+4+8+16+32+...这样的数之和。
如果累加数大于500时,则程序终止并输出结果。
510 (29)26. 编程序求出1~100所有整数的立方和并输出结果。
25502500 (29)27. 编程序求出1到5000之间的能被7整除的前若干个数之和,当和大于1500时退出并输出结果。
VF程序设计典型题目1、求[10,1000]内所有能被被7和9中至少一个数整除的整数之个数。
答案:236n=0for i=10 to 1000if mod(i,7)=0 or mod(i,9)=0n=n+1endiendf?n2、求[101,299]内所有能被2整除但不能同时被3和5整除的整数之和。
答案:18630s=0for i=101 to 299if mod(i,2)=0 and not (mod(i,3)=0 andmod(i,5)=0)s=s+iendiendf3、求100以内最大的自然数n,使得从1开始的连续n 个自然数的倒数之和小于3.5。
答案:18s=0for i=1 to 100s=s+1/iif s>=3.5exitendiendf?i-14、求100以内最小的自然数n,使得从1开始的连续n 个自然数的立方之和大于30000。
答案:25s=0for i=1 to 100s=s+i^3if s>30000exitendiendf5、求出100以内使得算式1*2+2*3+…+n*(n+1)的值小于5000的最大的自然数n。
答案:23s=0for i=1 to 100s=s+i*(i+1)if s>=5000exitendiendf?i-16、求出100以内使得算式1/(1*1)+1/(2*2)+…+1/(n*n)的值小于1.6的最大的自然数n。
答案:21s=0for i=1 to 100s=s+1/i^2if s>=1.6exitendiendf?i-17、某国今年的人口总数为1亿,若以每年4%的速度递增,试求出至少要再过几年该国人口总数才会翻一翻。
答案:18n=0x=1do while x<2x=x*(1+0.04)n=n+1enddo?n8、设等比数列:1,3,9,27,…。
求使得此数列的前n项之和大于2345678的最小的自然数n。
答案:14s=0n=0do while s<=2345678s=s+3^nn=n+1enddo?n9、求出45678的所有非平凡因子(即除1和它本身以外的约数)中是奇数的因子个数。
答案:7n=0s=45678for i=3 to 22839 step 2if mod(s,i)=0n=n+1endifendfor?n10、求出203267的所有真因子(即小于它本身的约数)中最大的因子数。
答案:6557s=203267for i=1 to int(203267/3)if mod(s,i)=0n=iendifendfor?n11、求出20677和42067的最大公约数。
答案:713for i=20677 to 1 step -1if mod(20677,i)=0 and mod(42067,i)=0exitendifendfor?i12、求前[1,100]内能被6或8整除的所有自然数的平方根的和(将第1位小数四舍五入,结果只保留整数)。
答案:162s=0for i=1 to 100if mod(i,6)=0 or mod(i,8)=0s=s+sqrt(i)endifendfor?round(s,0)13、求所有符合算式ab*ba=2701的最小的两位数ab (即a*10+b)。
其中a、b是1~9之间的一位整数。
答案:37for a=1 to 9for b=1 to 9if (a*10+b)*(b*10+a)=2701?a*10+breturnendifendforendfor14、已知数列:1,2,4,7,11,16,…,其规律是相邻两项之差依次是1,2,3,4,5,…。
试求出此数列中大于5000的最小的项。
答案:5051a=1n=1do while a<5000a=a+nn=n+1enddo?a15、已知数列{f(n)}:f(1)=1,f(2)=4,当n=3,4,5,…时,f(n)=3*f(n-1)-f(n-2)。
试求出100以内最小的自然数n 使得此数列的第n项大于87654321。
答案:20Dimension f(100)f(1)=1f(2)=4n=2do while f(n)< 87654321n=n+1f(n)=3*f(n-1)-f(n-2)enddo?n16、一球从100米高处落至平地,并且连续多次再反弹再落下,假设每次反弹的高度都是前一高度的3/4倍,试求出最大的自然数n,使得此球从开始下落至第n次着地时在垂直方向所经过的总路程不超过690米。
答案:15h=100s=100n=1do while s<690h=h*3/4s=s+2*hn=n+1enddo?n-117、设有用26个字母表示的26个表达式:a=1,b=1/(a+1),c=1/(b+2),…,z=1/(y+25)。
试求出这26个字母中其值小于0.1的字母个数。
答案:16a=1n=0for i=1 to 25a=1/(a+i)if a<0.1n=n+1endifendfor?n18、回文指的是正读和反读都一样的一串字符,如121、1221。
试求出[1421,4112]内所有回文数的和。
答案:74250s=0for i=1421 to 4112if int(i/1000)=i%10 and int(i/100)%10=int(i%100/10)s=s+iendifendfor?s19、求在[100,999]内所有不含数字0且各位数字之积被96整除的数之和。
答案:26640s=0for a=1 to 9for b=1 to 9for c=1 to 9if(mod(a*b*c,96)=0)s=s+a*100+b*10+cendiendfendfendf?s20、将大于1000且能被4和6中至少一个数整除的所有整数按从小到大顺序排列后,求前面20个数之和。
答案:20610a=1001n=0s=0do while n<20if mod(a,4)=0 or mod(a,6)=0s=s+an=n+1endifa=a+1enddo?s21、若一个自然数恰好是它的平方的末后几位数,则称此数为自同构数。
如5和76都是自同构数,因为它们的平方分别是25和5776。
求[2,99999]内所有自同构数之和。
(提示:若x是m位同构数,则x的平方除以10的m次方的余数就是x)答案:101114s=0for i=2 to 999999if mod(i*i,10)=i or mod(i*i,100)=i ormod(i*i,1000)=i or mod(i*i,10000)=i ormod(i*i,100000)=is=s+iendifendfor?s22、求满足条件A*B=54321且使A+B的值最小的自然数对A、B中较小的一个数。
(提示:设A<=B,当A越大时A+B越小)答案:57s1=54322for i=1 to int(sqrt(54321))if(54321%i==0 )s=i+54321/iif(s<=s1)s1=sa=iendifendifendfor?a23、已知数列:1、2、4、7、10、15、…,其特点是:相邻两项之差恰好构成自然数列:1、2、3、4、5、…。
求此数列的前100项中能被4整除的项的个数。
答案:25m=0a=1for n=1 to 99a=a+nif a%4==0m=m+1endifendfor?m24、求出将十进制整数98765432等值转换为二进制形式表示后其中数字1的个数。
(提示:模拟人工计算的“2除取余”法)答案:13c=98765432n=0do while c>0if(c%2==1)n=n+1endifc=int(c/2)enddo?n25、对自然数A、B、C,若A<B<C且A*A+B*B=C*C,则称{A,B,C}为一组勾股弦数,其中A、B、C分别称为勾、股、弦。
试求出弦为25000的勾股弦数组的个数。
答案:5n=0for b=12500 to 25000for a=1 to b-1if a*a+b*b=25000*25000n=n+1endifendforendfor?n26、求方程3x-7y=1在条件|x|<100且|y|<40下的整数解的个数。
答案:26n=0for x=-99 to 99for y=-39 to 39if 3*x-7*y==1n=n+1endifendforendfor?n27、已知数列{f(n)}:f(1)=1,f(2)=4,当n=3,4,5,…时,f(n)=3*f(n-1)-f(n-2)。
试求出100以内最大的自然数n 使得此数列的前n项之和首次大于75364321。
答案:19dime f(100)f(1)=1f(2)=4s=5for n=3 to 100f(n)=3*f(n-1)-f(n-2)s=s+f(n)if s>75364321exitendifendfor?n28、求100-200内的所有素数的个数。
(素质是指只能被1和本身整除的数)答案:21n=0for i=100 to 200for j=2 to i-1if(i%j==0)exitendifendforif j==in=n+1endifendfor?n29、求1000-10000内的第50个素数。
(素质是指只能被1和本身整除的数)答案:1361n=0for i=1000 to 10000for j=2 to i-1if(i%j==0)exitendifendforif j==in=n+1endifif n==50exitendifendfor?i30、编写程序,计算10000以内有多少个这样的数,其个位数为6且该数能被9整除。
答案:111n=0for i=1 to 10000if i%10==6 and i%9==0n=n+1endifendfor?n31、设某四位数的各位数字的平方和等于100,问共有多少个这种四位数?答案:49n=0for i=1000 to 9999a=int(i/1000)b=int(i/100)%10c=int(i/10)%10d=i%10if a^2+b^2+c^2+d^2=100n=n+1endifendfor?n32、把一张一元钞票,换成一分、二分和五分硬币,每种至少11枚,问有多少种方案?答案:13n=0for a=11 to 20for b=11 to 50for c=11 to 100if a*5+b*2+c=100n=n+1endifendforendfor?n33、把一张一元钞票,换成一分、二分和五分硬币,每种至少1枚,问兑换后硬币总数最多的与硬币总数最少的枚数之差是多少?答案:73max=3min=300for a=1 to 20for b=1 to 50for c=1 to 100if a*5+b*2+c=100s=a+b+cif(s>max)max=sendifif(s<min)min=sendifendifendforendfor?max-min34、找满足以下条件:X^2+Y^2=41^2 且X+Y之值最大的二个正整数X,Y, 求X+Y之值.答案:49max=41for x=1 to 41for y=x to 41if x*x+y*y=41*41 and max<x+ymax=x+yendifendforendfor?max35、已知24有8个正整数因子(即:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。