5、下面程序运行后,输出结果是 x=5 y=3
do sub with x,y ?x,y return
proc sub para a,b x=a*a y=b+b ?x,y Return
A) 5 3 B) 25 3 C) 25 6 D) 25 6 25 6 25 6 5 325 6
6、以下程序的功能是:生成20个200到300之间的随机整数,输出其中能被5整除的数并求出它们的和。请填空。 for i=1 to 20
x=Int(Rnd()*200+100)
if (答案:mod(x,5) 或 x%5 =0 ) ? x
S=S+ (答案: x ) endif endfor
三、编程题
1、给定成绩表score表(如图所示),其中前4项已有数据。
请编写符合下列要求的程序:计算每一个学生的总学分并存入对应的学分字段。学分的计算方法是:物理60分以上(包括60分)2学分,否则0分,高数60分上(包括60分)3学分,否则0分,英语60分以上(包括60分)4学分,否则0分。
参考程序:
use score
Do while not eof() Xf=0 If 物理>=60 Xf=xf+2 Endif If 高数>=60 Xf=xf+3 Endif If 英语>=60
Xf=xf+4
Endif
Repl 学分 with xf
Skip Enddo return
综合练习二
一、SQL题
1、查找学分大于3分的课程名。
答案:sele 课程名 from 课程 where 学分>3
2、查找与“张三”同龄的学生的姓名和年龄。
答案:sele 姓名,年龄 from 学生 where 年龄 in (sele 年龄 from 学生 where 姓名=’张三’)
3、查找学生“李四”所选课程的课程号、课程名、学分及考试成绩。 答案:sele 课程.课程号,课程名,学分,成绩 from 学生,课程,选修;
where学生.学号=选修.学号 and 选修.课程号=课程.课程号 and 姓名=’李四’
4、查询每一个学生的平均成绩,并将查询结果按平均成绩的升序排序。 答案:sele avg(成绩) from 选修 group by 学号 order by avg(成绩)
5、删除课程表中课程号为“C03”的课程信息。 答案:Delete from 课程 where 课程号=”C03”
二、程序分析题
1、程序运行后,显示的内容是: s = 1
for a=8 to 1 step -1
s = s + a Endfor ? s, a
A) 36 0 B) 36 1 2、下面程序运行后,输出的结果是 dime a(10),b(3)
C) 37 0 D) 37 1
s=0
for i=1 To 10
a(i)=i endfor
For i=1 To 3
b(i)=a(i*i) EndFor
For i=1 To 3
s=s+b(i) EndFor ?s
A)55 B) 35 C) 14 D) 9
3、程序运行后,s的值是多少? S=0
For i=1 TO 15
x=2*i-1
ifmod(x, 3)=0
s=s+1 endif Endfor ?s
A)1 B) 5 C) 27 D) 45
4、程序运行后 Input “n=” to n For i = 3 To n
For j = 2 To sqrt(i) If MOD(i,j)= 0 Exit Endif Endfor
If j >sqrt(i) ? i Endif Endfor
A) 输出n以内的素数 B) 输出n以内的奇数
C) 输出n以内的偶数 D) 输出n以内能被j整除的数
5、下面程序运行后,显示的内容是 *** 主程序 *** x=10 y=5
y=f1(x)
?x,y return
*** 函数过程 *** Function f1 para x x = 20 y = 2
z = x * y return z
A)10 5 B) 20 5 C)20 40 D)10 40
6、将下面程序正确填空,使程序运行后的输出结果为: 5 456 34567 2345678 123456789 clear
a=【1】&&答案:【1】'123456789' For i =1 To 5
? Space(【2】) + subs(a, 6-I ,2*i-1 ) &&答案:【2】6-i Endfor
三、编程题
给定Score1表(如图所示),其表结构是:学号C(10)、少数民族L、优秀干部L、三好生L、考试成绩I、总成绩I。其中,前五项已有数据。
请编写符合下列要求的程序:计算每一个学生的总成绩。总成绩的计算方法是:考试成绩+加分,加分的规则是:如果该生是少数民族(相应数据字段为 .T.)加分5分,优秀干部加分10分,三好生加分20分,加分不累计,取最高的.。
参考程序: Use score1 scan Jf=0 Do case
Case 三好生 Jf=20
Case 优秀干部 Jf=10
Case 少数民族
Jf=5 Endcase
Repl 总成绩 with 考试成绩+Jf Endscan
综合练习三
一、SQL题
1、所有“男”职工的基本信息。
答案:Select * from 职工 where 性别='男'
2、参加“唱歌队”或“篮球队”的职工号和姓名
答案:Select 职工号,姓名 from 职工,参加,社团 where 职工.职工号=参加.职工号
and 参加.编号=社团.编号 and (社团名称='唱歌队' or 社团名称='篮球队')
3、与“Z1008”号职工同龄的所有职工信息。
答案:Select * from 职工 where 年龄=( select 年龄 from 职工 where 职工号='Z1008')
4、参加人数大于20人的社团编号和参加人数。 答案:Select 编号,cnt(*) as 参加人数 from 参加 group by 编号 having 参加人数>20
5、一条社团记录,编号为S07,社团名称为文学社,负责人为赵勇,活动地点为文学院。
答案:Insert into 社团 values('S07','文学社','赵勇','文学院')
二、程序分析题
1、写出下列程序的运行结果。 clear a=1
do while a<5 b=1
do while b<5 if a*b<10 b=b+1 else exit endif enddo a=a+1 enddo