求解VF例题,谢过~

求解VF例题,谢过~,第1张

二、填空题

1、使用数据库设计器为两个表建立联系,首先应在父表中建立__主__或候选_索引,在子表中建立_____普通___索引。

2、常量 .n.表示的是_____逻辑___型的数据。

3、在Visual FoxPro中参数传递的方式有两种,一种是按值传递,另一种是按引用传递,将参数设置为按引用传递的语句是:SET UDFPARMS__to reference_______________ 。

4、运行表单时,Load事件弯哗是在Init事件之_______前___被引发。

5、如下程序的输出结果是___11_____ 。  

  i=1

DO WHILE i<10

   i=i+2

ENDDO

? i

6、数据库系统的核心是__数据库管理系统_______________。

7、数据库设计包括概念设计、_物理_______设计和__逻辑埋汪行______设计。

8、在二维表中,元组的____属性__不能再分成更小的数据项。

9、RIGHT(“12345.6789”,LEN(“货币”))的计算结果是___"6789"______。

10、每个数据库表可以建立多个索引,但是___主____索引只能建立一个。

11、在VF中,用LOCATE ALL FOR命令按条件对某个表中的记录进行查询后,若查不到满足条件的记录,用EOF() 函数测试,返回值应是____.T.______。

12、所谓自由表就是那些不属于任何_____数据库___的表。

13、在职工表中有一数值型的“基本工资”字段,要给目前基本工资为800元的职工每人增加200元,使用的命令是__replace all 基本工资 with 基本工资+200 for 基本工资=800___。

14、在VF中,可提供___32767_____个工作区,前10个区可以用1~10作为区号,还可以用符号__A-J___作为区号别名。一个工作区可以打开___1___个数据表文件。

三、分析解答题

2、 有一个编号数量表文件 BHSL.DBF。其内容如下:

记录号 编号 数量

1 A110

2 A065

3 A272

4 B1040

5 B1250

阅读以下程序,写出运行结果。

Set Talk Off

Use BHSL

Set Order To Tag 编号

Store 0 To S

Locate For 数量>10

Do While .not.eof()

?? 编号陵链

If SUBSTR(编号,2,1)=[1]

S=S+数量

Endif

Continue

Enddo

? S

Use运行结果是:__A0 A2 B10 B12

90________ 。

Set Talk On

3、修改下面程序的错误,使其能够计算出30以内(含30)能被5整除的正整数之和。

注意:不要修改或删除y=y+x及其后面的命令和语句。

Clear

store 0 to x,y

Do While .T.

x=x+1

Do CASE

CASE Mod(x,5)=0

y=y+x

CASE x>30

exit

Endcase

Enddo

? y

四、编程题

1、 计算1+2+3+4+5+……+50 的和。

s=0

for i=1 to 50

s=s+i

endfor

?"s=",s

return

2、 有如下命令序列,其功能是根据输入的考试成绩显示相应的成绩等级;

Set Talk Off

Clear

Input “输入考试成绩” To chj

dj=IIF(chj<60,”不及格”,IIF(chj>=85,”优秀”,”及格”))

?”成绩等级:”+dj

Set Talk On

请用DO CASE …..ENDCASE 多分支选择结构改写程序,同样实现以上功能。

Set Talk Off

Clear

Input “输入考试成绩” To chj

do case

chj >=85

dj=优秀"

chi >=60

dj="及格"

otherwise

dj="不及格"

endcase

?”成绩等级:”+dj

Set Talk On

首先第一题,n是变量名,代表符合条件的整数个数。for循环语句,变量i范围从10到1000,默认变化增量为1。if条件句,如果i除以7的余数是0,或i除以9余0,变量n就加1;否则n不加,if条件后,对应地要endif(简写endi),即结束if比对。然后for循环启动,从10到1000,一个接一个自动检验。同理,1000完后,结束循环,要endfor(简写endf)。最后?n是输出命令,输出n值。。。。。初学最好不要简写,即不要只写前4个字母。

总结,第一题相当于设计一个程序。最初符合条件的铅掘整数为清键0个,变量n=0。在范围[10,1000]内搜索,常用for循环语句;所有能被被7和9中至少一个数整除,就设定条件if mod(i,7)=0 or mod(i,9)=0 ,符合条件答激巧就是找到了一个问题要的整数,故你要加1,即n=n+1。完了,要配套使用if与endif for与endfor 题目问有几个符合条件的,就是输出n值,即?n

第二题同理,s相当于n,就像abcd,只是个代号罢了。给s暂时取值为0,从1开始,s=s+1/i 表示从1开始的连续n个自然数的倒数之和。exit 是立马跳出for循环命令,即进行endfor后面的程序(?i-1 )。最后 ,输出i-1,是因为执行exit的前提是s>=3.5 ,而题目只要求小于3.5就叫停,故i一旦使s多一点点或恰好相等,就立即跳出循环,并输出i-1,即得出最终答案。

其实,第二题答案还有缺陷。若1到100的倒数之和小于3.5,而i-1会输出99。从某种意义上而言,第二题答案还值得再思。

最后,我也是大学生,上学期恰好学了VF,多多跟着书上上机指导一步一步练习非常重要。CHEER UP!


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/yw/12556187.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存