程序填空
有情提示””,都得在VB程序内自己从打最好自己手打别复制
1以下程序段用于输出杨辉三角
Private Sub Form_Click()
Const n=10
Dim arr(n,n) As Integer
For I=1 To n
*******SPACE*******
arr(i,1)=1
arr(i-1,j-1)+arr(i-1,j)
Print arr(i,j)
2 下面的事件过程判断文本框Text1 中输入的数所在区间,并在文本框Text2 中输出判断结果
Private Sub Command1_Click()
Dim int1 As Integer
*******SPACE*******
int1=Val(Text1.Text)
*******SPACE*******
Case 1 to 10
Case Is>10
3 以下程序的功能是:生成20个200到300之间的随机整数,输出其中能被5整除的数并求出它们的和
Private Sub Command1_Click()
Dim s As Integer
*********SPACE************
s=0
*********SPACE************
X=Int(Rnd*100+200)
*********SPACE************
If X Mod 5=0 Then
4 下面的程序用于求三个数中最大数
Priate Sub Command1_Click()
Dim a,b,c min As Integer
a=Val(InputBox”请输入第一个数:”)
b=Val(InputBox”请输入第二个数:”)
c=Val(InputBox”请输入第三个数:”)
*********SPACE************
max=a
*********SPACE************
If b>max Then max=b
*********SPACE************
If c>max Then max=c
5 在窗体上画一个标签(名称为Label1)和一个计时器(名称为Timer1),然后编写如下几个事件
过程:要求:每一秒钟Label1更新显示一次系统时间
Private Sub Form_Load()
Timer1.Enabled=False
*********SPACE************
Timer1.Interval=1000
*********SPACE************
Timer1.Enabled=True
*********SPACE************
Label1.Caption= Now
6 在窗体上建立两个文本框Text1(输入数)及Text2(显示结果),一个命令按钮Command1(“判断”).单击按钮时判断Text1中输入的数值是否是4的倍数.
Private Sub Command1_Click()
Dim x As Integer
*********SPACE************
If IsNumeric(Text1.Text)= Fasle Then
*********SPACE************
x=Clnt( Text1.Text)
*********SPACE************
If x Mod 4 =0 Then
7 窗体上建立了一个文本框Text1,用于显示结果.单击按钮弹出输入对话框录入0-6之间的数值,判断输入值为星期几
Private Sub Command1_Click()
Dim x As Integer
*********SPACE************
x=Val(InputBox”请输入星期几(0~6)”)
*********SPACE************
Select Case x
*********SPACE************
Case Else
8 窗体上建立了一个文本框Text1(“输入口令”)和一个命令按钮Command1(“检查”).判断密码是否正确,并显示相应提示,在加载窗体时设置密码框最大长度为8,密码显示字符为”*”Private Sub Command1_Click()
x=Text1.Text
*********SPACE************
If x=”12345678”Then
*********SPACE************
Text1.MaxLength = 8
*********SPACE************
Text1.PasswordChar=”*”
1 窗体上建立了两个文本框Text1(输入字符串)及Text2(转换结果),一个命令按钮Command1(“清除”)。录入Text1内容时将,将录入内容大写字母转为小写,小写转为大写Private Sub Command1_Click()
Text1.Text=””
Text2.Text=””
*********SPACE************
S= chr (KeyAscii)
Select Case s
*********SPACE************
Case “A”To “Z”
s= LCase(s)
*********SPACE************
s = UCase(s)
Case Else
s = “*”
2 打印出100~999之间的所有水仙花数,如果一个数的百位,十位,个位数的立方和等于这个数本身则这个数位水仙花数。
Private Sub Command1_Click()
Dim i As Integer ,a As Integer, b As Integer, c As Integer
*********SPACE************
For i =100 To 999
*********SPACE************
a = Int(i/100)
b = Int((i-100*a)/10)
*********SPACE************
c = i -100*a –b*10
3 窗体中有两个List列表,及4个按钮。程序功能,单击“产生随机数”按钮,随机产生20个随机数填入List1中“保存”按钮作用是将数组内容写到文件中,“读出”按钮作用是将文件内容读到数组中,“结束”按钮作用是结束程序。
Dim d(1 To 20)As Integer
Private Sub Command1_Click() “产生随机数”
*********SPACE************
d(i)=Int(1+99*Rnd)
List1.AddItem d(i)
*********SPACE************
Write #1 , d(i)
*********SPACE************
Do While Not EOF(1)
4 求一元二次方程ax2+bx+c=0的根,其中a不等于0
Private Sub Form_Click()
Dim a% b% c% ,d!
Dim x1 x2
Dim p,q,r
a=InputBox(“请输入a的值”)
b=InputBox(“请输入b的值”)
c=InputBox(“请输入c的值”)
d=b*b-4a*c
p=-b/(2*a)
*********SPACE************
If d>0 Then
R=Sqr(d)/(2*a)
*********SPACE************
End if
Print “x1=”;x1, “x2=”;x2
*********SPACE************
Else
q= Sqr(-d)/(2*a)
5 以下程序段用于实现:输入两个正整数m和n,求其最大公约数和最小公倍数.
Private Sub Form_Click()
Dim a%,b%,num1%,num2%,temp
num1=InputBox(“请输入一个正整数”)
num2=InputBox(“请输入一个正整数”)
*********SPACE************
If num2>num1 Then
Temp=num1:num1=num2:num2=temp
*********SPACE************
Do Until Temp=0
Loop
6 建立下拉式菜单,通过菜单来控制文本框中文字的大小和颜色
*********SPACE************
Text1.ForeColor=vbBlue
End Sub
*********SPACE************
End
End Sub
*********SPACE************
Text1.ForeColor=vbGreen
7 建立下拉式菜单,通过菜单来控制文本框中文字的字型,字体大小和字体的颜色。其中文件和颜色为下拉式菜单,文字的属性用弹出式菜单设置。
*********SPACE************
End
End Sub
*********SPACE************
If Button=2 Then
*********SPACE************
Me.PopupMenu MnuFont,4Or2
End If
End Sub
8 设计一个调色程序
*********SPACE************
Text1.ForeColor =RGB(HsbRed.Value,HsbGreen.Value,HsbBlue.Value)
*********SPACE************
Text1.BackColor=RGB(HsbRed.Value,HsbGreen.Value,HsbBlue.Value)
*********SPACE************
LblRed.Caption=”绿色分量值:”& HsbGreen.Value
End Sub
9 编写一个摄氏温度与华氏温度转换的程序。公式为:C=5/9X(F-32),其中c为摄氏温度,f为华氏温度。
*********SPACE************
f=Val(Text1.Text)
c=5/9*(f-32)
*********SPACE************
Text2=Str(c)
End Sub
*********SPACE************
f=9/5*c+32
Text1.Text=Str(f)
1 修改文本框控件的背景色,字体颜色和字型。注意:将文本框的MultiLine属性设为TrueScrollBars属性设为2。
*********SPACE************
Text1.BackColor= vbYellow
*********SPACE************
If Check1.Value=1 Then
*********SPACE************
Text1.FontBold=True
2 随机产生一个汽车牌号,它由6个字符组成,其中首字符为大写字母,后面是5个数字。“通过字母判断汽车种类,字母B表示出租车,G表示郊区车,O表示警车,A,C,E,F,H,J,K 表示普通车,其它字母组成的车牌号不存在。”(提示:首字符的表示方法a=Chr(Int (Rnd*26+65))。)
*********SPACE************
Select Case a
*********SPACE************
Case “G”
*********SPACE************
Case Else
3 计算1-2+3-4+5-6……的值,由文本框输入项数。提示:将表达式看成求n项累加和,各项正负相同。c表示吗,每项的绝对值,f等于1表示本项为正,-1表示为负,f*c表示本项。循环一次c递增1,f取相反数。当c为1时s等于前一项的和,c为2时s为前两项的和,……,c为n时s为前n项的和,c为n+1时退出循环。
*********SPACE************
Do While c<=n
*********SPACE************
s =s+f*c
*********SPACE************
f = -f
4 求斐波那契(Fibonaccii)序列的第20个数。
*********SPACE************
f2=1
*********SPACE************
For i=3 To 20
*********SPACE************
f2=f
5 近似公式π/4=(1-1/3+1/5-1/7+1/9-…±1/n),求π的近似值,直到最后一项的绝对值小于10-4为止。
*********SPACE************
Do Until Abs(s)<0.00001
*********SPACE************
n= n+2
*********SPACE************
Label1.Caption=”π==”& 4*pi
6 输出菱形图案,其中n表示菱形上半部分行数,例如n=5时,如图
*
***
*****
*******
*********
*******
*****
***
*
*********SPACE************
For j=1 To 2*i-1
*********SPACE************
For i=n-1 To 1 Step -1
*********SPACE************
Print”*”
7 试编写程序,利用随机函数产生25个10到99之间的随机整数存放在5X5矩阵中,在窗体上按5行5列的矩阵形式显示出来,然后交换矩阵第二列和第四列的数据,并在窗体上输出交换后的矩阵。
*********SPACE************
Mat(i,j)=Int(89*Rnd+10)
*********SPACE************
For i=1 To 5
*********SPACE************
Mat(i,2)=Mat(i,4)
8 利用单选按钮数组,完成文本框的字体设置,字号改变文本框的字号大小。
*********SPACE************
Text1.FontName=”仿宋_GB2312”
*********SPACE************
If Op2(i).Value
*********SPACE************
Text1.Fontsize =Int(Op2(i).Caption)
9 随机生成25个2为正整数,分别赋给一个5X5的数组,找出每一行中最大元素。
*********SPACE************
a(i,j)=Int(10+ Rnd *90)
*********SPACE************
Print”第”+“行中的最大元素为:”;Mmax(a,i)
*********SPACE************
If a(i,j)>Mmax Then Mmax=a(i,j)
1 下面事件过程产生10个两位的正的随机整数,并利用冒泡法升序排序,请完善它。
*********SPACE************
For n =1 To 10-M
*********SPACE************
If a(n)> a(n+1) Then
*********SPACE************
next n
2 下列程序代码是实现单击命令按钮Command1时,读入n个数,用比较交换法对这n个数,按从大到小的顺序排序,并输出排序结果。
*********SPACE************
For i =1 To n
*********SPACE************
For j = i+1 To n
*********SPACE************
A(i)=a(j)
3 以下程序代码实现单击命令按钮Command1时生成20个(0,100)之间的随机整数,存于数组中,打印数组中大于50的数,并求出这些数的和。
*********SPACE************
Dim arr(20) As Integer
*********SPACE************
If Arr(I)>50 Then
*********SPACE************
Sum= sum + arr(I)
4 单击窗体,分别输入3个数a b c ,在窗体上输出3个数的中间数。
*********SPACE************
t=a : a=b : b=t
*********SPACE************
m=a
*********SPACE************
Elself b>c Then
5 单击命令按钮,如果在文本框Text1中输入的数值数据满足除以2余1,除以3余2,除以4余3,则输出yes,否则输出no。再将焦点转移到文本框Text1中并选中所有文本。*********SPACE************
x= Val(Text1.Text)
*********SPACE************
If x Mod 2=1And x Mod 3=2 And x Mod 4=3 Then
*********SPACE************
Text1.SelLength= Len(Text1.Text)
*********SPACE************
6 以下程序在文本框Text1中输入任意字符串,并按相反的次序显示在文本框Text2中。
*********SPACE************
M=Len(Text1.Text)
*********SPACE************
D=D& c
*********SPACE************
Text2.Text=D
7 以下程序的功能是用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中的最小值。
*********SPACE************
Min= arr(1)
*********SPACE************
For i = 2 To 8
*********SPACE************
If arr1(i) 8 Option1(2) Option1(3),标题分别是“+”“-”“*”“/”。要求:程序运行后在Text1 Text2中输入两个数,按“计算”按钮,结果在Text3中显示出来。 *********SPACE************ y=Val(Text2.Text) *********SPACE************ Select Case Index1 *********SPACE************ Text3.Text= x/y 9 窗体如图,单击“开始”按钮触发时间控件,每隔3秒,窗体背景颜色随机改变。单击“结束”按钮,程序结束运行。 *********SPACE************ Form1.BackColor =Int(Rnd*256) *********SPACE************ Timer1.Interval=3000 *********SPACE************ Timer1.Enabled = False 1 下列代码的功能是:在窗体Form1加载时将数据1 2 3 4 5添加单列表框List1中,将列表框List1中选中的数据移到列表框List2中。 *********SPACE************ List1.AddItem *********SPACE************ If List1.Selected(i)=True *********SPACE************ List1.RemoveItem 2以下程序段利用随机函数生成15个[10.100)之间的整数,然后用选择法将其从小到大排序。 *********SPACE************ For j= i+1 To n *********SPACE************ If a(j) *********SPACE************ If t<>i Then 3 以下程序代码将任意一组数存入数组,从键盘接收一数据,将其插入数组中,插入的位置也从键盘接收。 *********SPACE************ ReDimA(N) *********SPACE************ Do While P>N Or P<1 *********SPACE************ For I=N To P+1 Step -1 4 以下程序的功能是产生100个[1,1000]的随机整数,放入数组a(100)中,然后输出其中的最大值,请填空。 *********SPACE************ Max=a(1) *********SPACE************ If a(i)>Max Then *********SPACE************ End If 5 窗体上有一个名称为List1的列表框,一个名称为Text1的文本框,一个名称为Label1 Caption属性为“Sum”的标签,一个名称为Command1 标题为“计算”的命令按钮。程序运行后,将把1~100之间的能被7整除的数添加到列表框中。如果单击“计算”按钮,则对List1中的数进行累加求和,并在文本框中显示计算结果。 *********SPACE************ List1.Additem I *********SPACE************ For i=0 To List1.Listcount-1 *********SPACE************ Sum=Sum+ List1.List(i) 6 以下程序用于在带垂直滚动条的文本框Text1中输出3到100之间的全部素数。 *********SPACE************ Do While I<= k And Flag=0 *********SPACE************ If N Mod i=0 Then Flag=1 Else i=i+1 *********SPACE************ If Flag= 0 Then 7 以下是一个比赛评分程序。在窗体上建立一个名为Text1的文本框数组,然后画一个名为Text2的文本框和名为Command1的命令按钮。运行时再文本框数组中输入7个分数,单击“计算得分”命令按钮,则最后得分显示在Text2文本框中(去掉一个最高分和一个最低分后的平均分即为最后得分)。 *********SPACE************ min= Text1(0) *********SPACE************ For k= 1 To 6 *********SPACE************ Text2= (sum-max-min)/5 8 求表达式1+(1*2)+(1*2*3)+.....+(1*2*3*...*n)的值。*********SPACE************ j=1 *********SPACE************ For i = 1 To n *********SPACE************ j = j*i 一.程序阅读题 1.若运行时输入100↙,写出以下程序的运行结果。main ( ) { int a ; scanf(“%d”,&a); printf(“%s”,(a%2!=0)?”No”:”Yes”); } 答案: Yes 2.写出以下程序的运行结果。 main ( ) { int a=2,b=7,c=5; switch (a>0) { case 1: switch (b<0) { case 1: printf(“”); break ; case 2: printf(“!”); break ; } case 0: switch (c==5) { case 1: pritnf(“*”) ; break ; case 2: printf(“#”) ; break ; default : printf(“#”) ; break ; } default : p rintf(“&”); } printf(“\n”); } 答案: *& 3.写出下面程序运行的结果。 main ( ) { int i,b,k=0 ; for (i=1; i<=5 ; i++) { b=i%2; while (b--==0) k++ ; } printf(“%d,%d”,k,b); } 答案:2 0 4.写出下面程序运行的结果。 main ( ) { int k=1,n=263 ; do { k*= n%10 ; n/=10 ; } while (n) ; printf(“%d\n”,k); } 答案:36 5.写出下面程序运行的结果。 { int a=10,y=0 ; do { a+=2 ; y+=a ; if (y>50) break ; } while (a=14) ; printf(“a=%d y=%d\n”,a,y) ; } 答案:a=16 y=60 数组部分: 1.写出下面程序的运行结果。 main ( ) 答案: { int a[6][6],i,j ; for (i=1; i<6 ; i++) for (j=1 ; j<6 ; j++) a[i][j]=(i/j)*(j/i) ; for (i=1;i<6 ; i++) { for (j=1 ; j<6 ; j++) printf(“%2d”,a[i][j]) ; printf(“\n”); } } 2.写出下面程序的运行结果。 main ( ) { int i=0; char a[ ]=”abm”, b[ ]=”aqid”, c[10]; while (a[i]!=’\0’ && b[i]!=’\0’) { if (a[i]>=b[i]) c[i]=a[i]-32 ; else c[i]=b[i]-32 ; i++; } c[i]=’\0’; puts(c); } 答案:AQM 3.当运行下面程序时,从键盘上输入AabD↙,则写出下面程序的运行结果。 main ( ) { char s[80]; int i=0; gets(s); while (s[i]!=’\0’) { if (s[i]<=’z’ && s[i]>=’a’) s[i]=’z’+’a’-s[i] ; i++; 1.下列程序由键盘输入一个文件名,然后把从键盘输入的字符依次存放到磁盘文件中,直到输入一个"#"为止。 #include "" main( ) { FILE *fp; char ch,filename[10]; scanf("%s",filename); /*用户输入存在磁盘上的文件名*/ if((fp= ⑦ (filename,"w"))==NULL) { printf("cannot open file\n"); exit(0); } while((ch=getchar())!='#') ⑧ ; fclose(fp); } 2.下列程序的功能是输出一个整数x的绝对值。将程序补充完整,填在空内。 #include <> main() { int x, ① ; scanf("%d",&x); y= ② ; printf("%d\n",y); } 3.下列程序的功能是输出1~100之间能被7整除的所有整数。将程序补充完整,填在空内。 main() { int i; for(i=1; ③ ;i++) { if(i%7) ④ ; printf("%d ",i); } } 4.以下程序用以删除字符串中所有的空格,请填空。 main() { char s[100]={"Our teacher teach C language!"}; int i,j; for(i=j=0;s[i]!= '\0';i++) if(s[i]!= ' ') { ⑤ ;j++;} s[j]= ⑥ ; printf("%s\n",s); } 5.结构体数组中存有三个人的姓名和年龄,以下函数fun的功能是输出三人中最年长者的姓名和年龄。 struct man { char name[20];int age;}person[]={{"Mary",16},{"Tom",21},{"Jim",18}}; void fun( ⑦ person[ ] ) { int i,old=0; for(i=0;i<2;i ++) if(person[old].age 程序填空 第1题 题目:求出二维数组中的最大元素值。 1). max_value(3,4,a) 2). array[][4] 3). max=array[i][j] 第2题 功能:数组名作为函数参数,求平均成绩。 1). a 2). av 3). &sco[i] 4). sco 第3题 题目:求数组中的最大值。 程序中有4个空,填空使程序完整。 1). &a[i] 2). a[i] 3). int x,int y 或 int y,int x 4). z 或 ( z ) 第4题 题目:找出数组中最大值和此元素的下标,数组元素的值由键盘输入。 1). a + i 或 &a[i] 2). p-a 或 -a+p 3). > 4). *s 第5题 功能:通过函数的递归调用计算阶乘。 1). power(n-1)*n 或 power( n - 1 ) * n 2). &n 3). y 第6题 题目:有5个学生,每个学生有3门课的成绩,从键盘上输入以上数据(包括学生的学号、姓名和3门课的成绩),计算出平均成绩,将原有数据和计算出来的平均成绩存放在磁盘文件“stu”中。 1). *fp 2). k/n 3). &a[i] 4). &b[i] 第7题 题目:下面程序的功能是:将一个字符串中下标为m的字符开始的全部字符复制成为另一个字符串。程序中有4个空,填空使程序完整。 1). char *p1 , *p2 ; 2). p1= str1 + m; 3). *p2++=*p1++; 或 *(p2++)=*(p1++); 4). strcopy(str1,str2,m); 第8题(10.0分)题号:422 题目:文件操作。 1). FILE 2). r 3). fclose(fp) 第9题 题目:输入学生成绩并显示。 1). i++ 或 ++i 或 i=i+1 2). &stu[i] 3). &stu[i] 4). printf 第10题 题目:输入数组,最大的与最后一个元素交换,最小的与第一个元素交换,输出数组。 1). i<9 或 9>i 2). min=p 3). l=*p 4). array[9]=k 第11题 题目:以下程序的功能是删除一个字符串中的所有数字字符。 1). s[i]!= 或 *(s+i)!= 2). || 3). s[j]=s[i] 4). delnum(item) 第12题(10.0分)题号:436 题目:输出两个整数中大的那个数,两个整数由键盘输入。 1). (int *) 2). p1 3). *p1 第13题 题目:以下程序的功能是删除字符串中的指定字符,字符串和要删除的字符均由键盘输入。 1). str 2). !='\0' 3). str[k]=str[i] 4). str[k]='\0' 第14题 题目:从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符串以!结束。 VB程序阅读题与程序填空题综合练习 1、阅读下面程序,当单击窗体之后,窗体上输出的是。 Private Sub Form_Click( ) Dim i As Integer, j As Integer Dim k As Integer k=0 For i = 0 To 10 Step 3 For j = 1 To 10 If j > = 5 Then i = i +4: Exit For j = j + 1 k = k + 1 Next If i > 8 Then Exit For Next Print k End Sub 2、阅读下面的事件过程。单击窗体后,在文本框Text1和Text2中显示的内容分别 是和;若将程序中A语句与B语句的位置互换,再次执行程序,单击窗体后在Text1和Text2中显示的内容分别是和。 Private Sub Form_Click( ) Dim x As Integer, y As Integer x = 1 : y = 0 Do While x < 3 y = y + x 'A语句 x = x + 1 'B语句 Loop Text1.Text = x Text2.Text = y End Sub 3、下面程序段中,k循环共执行次,在窗体上显示的结果是。 Dim b As Integer, k As Integer b = 1 For k =1 To 5 b = b * k If b > = 15 Then Exit For Else k = k + 1 End If Next k Print k, b 4、以下是按钮cmdl的Click事件过程,求1~100之间的所有质数。质数的个数显示在窗 体上,在划线处填上缺少的内容。 Private Sub cmdl_Click( ) Dim intNum As Integer, int1 As Integer, int2 As Integer intNum = 0 For int1 = For int2 = 2 To int1 \2 If (int1 Mod int2) = 0 Then intNum=1 End If Next If sNum = sNum + 1 End If Next Print End Sub 5、若命令按钮的名称为CmdExit,程序要求单击以上命令按钮时,程序停止运行。请在画线处中填入适当的内容。 Private Sub CmdExit_ ( ) End Sub 6、下面的事件过程判断文本框txt1中输入的数所在区间,并在文本框txt2中输出判断结果。在画线处填入正确的内容。 Private Sub Comandl_Click( ) Dim int1 As Integer int1 =val (txt1.Text) Select Case int1 Case txt2.Text = "值为0" Case txt2.Text = "值在1和10之间(包括1和10)" Case txt2.Text = "值大于10" 程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【】下面程序的功能是不用第三个变量,实现两个数的对调操作。#include <> main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ①; b= ②; a= ③; printf("a=%d,b=%d\n",a,b); } 【】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include <> double pi(long n) { double s=; long i; for(i=1;i<=n;i++) s=s+ ①; return( ②); } 【】下面的程序的功能是求一维数组中的最小元素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p 三、程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【3.1】下面程序的功能是不用第三个变量,实现两个数的对调操作。 #include 【3.2】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include 模拟1 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 题目:下述程序的功能是将字符串s2连接到字符串s1后。 -------------------------------------------------------*/ #include #include 数不得多于或少于20。 请改正程序中的4个错误,使它能得出正确的结果。 -------------------------------------------------------- 答案: =======(答案1)======= printf("%8.0f",f1); =======(答案2)======= for(i=1;i<20;i++) =======(答案3)======= f1=f2; =======(答案4)======= f2=f3; 题目:要求输出结果为: A,B 65,66 答案: =======(答案1)======= b; =======(答案2)======= 'a' =========或========= 97 =======(答案3)======= 32 题目:以下程序的功能是对任一整数N(N≠0),它都可以分解成1 (或-1)和一些质数(素数)因子的形式。如N=150时,可分解成1×2×3×5×5;N=-150时,可分解为-1×2×3×5×5。 下边程序能实现这种分解过程。当N=150,输出以下分解结 果:N= 1* 2* 3* 5* 5 答案 n>0 i=2 r=n%i n=n/i 题目:输入一个学生的生日(年:y0、月:m0、日:d0),并输入当前日期(年:y1、月:m1、日:d1)。求出该学生的 年龄(实足年龄) 答案: =======(答案1)======= 第1.题*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能:下面的程序是求1!+3!+5!+……+n!的和。 -------------------------------------------------------*/ #include 【程序填空】 功能:写一个函数,求一个字符串的长度,在main函数中输入字 符串,并输出其长度。 len=length(str...); I.nt length ........(p) N.++..; P.++..; 【程序改错】 功能:将一个字符串中的大写字母转换成小写字母。 bool (char) ......fun(char *c) fun= c;(return *c) .......... puts(*p);(putchar(*p)) ............. 【程序设计】 功能:编写函数实现两个数据的交换,在主函数中输入任 意三个数据,调用函数对这三个数据从大到小排序。 ------------------------------------------------*/ #include 程序填空题一 1. 下面C语言程序将两个递增有序的数值a和b 合并一个数组c,并保持递增次序,最后输出数组c. #include < stodio.h> #define M6 #define N5 main( ) {int a[M]={1,3,5,7,9,11} b[N]={2,4,6,8,10} int c[M+N] int i ,j, k; i=j=k=0 while( 1 ) if a[i] printf(%dxt,c[k]; ) 其中(1)(2)(3)(4)处分别填一数据,使程序达到其功能。 答案: 1:i 解:(1)(*f)(x+y)/(*g)(y-x) (2)cos,sin,a,b [解析]本题考察的是函数的声明。要填写的两个空都出现在return语句中,所以要仔细分析函数的返回值。本题的第二个空相对要容易一些,只要根据题干和乘号前面的调用语句对比一下即可得到调用语句的四个参数。第一个空相对要难一些,函数fgh定义时用到了函数指针(*f)和(*g)是为了增加函数的灵活性。根据函数h的定义以及题干要求,可以看出函数fgh应该表示的是乘号两边的某一项。(*f)和(*g)用来表示sin或cos,参数x 和y的加减法运算作为sin或cos函数的参数,故应填写(*f)(x+y)/ (*g)(y-x)。 程序填空:阅读程序。在划线处填写适当的表达式或语句,使程序完整并符合题目要求 1.输入一个字符,判断该字符是数字、字母、空格还是其他字符。 main( ) { char ch; ch=getchar(); if( ch>=?a?&&ch<=?z?|| ch>=?A?&&ch<=?Z?) printf("It is an English character\n"); else if( ch>=?0?&&ch<=?9?) printf("It is a digit character\n"); else if( ch== …?) printf("It is a space character\n"); else printf("It is other character\n"); } 2.下列程序的功能是从输入的整数中,统计大于零的整数个数和小于零的整数个数。用输入0来结束输入,用i,j来放统计数,请填空完成程序。 void main() { int n,i=0,j=0; printf(“input a integer,0 for end\n”); scanf(“%d”,&n); while (n或n!=0 ) { if(n>0) i=i+1 ; else j=j+1; } printf(“i=%4d,j=%4d\n”,i,j); } 3.编程计算1+3+5+……+101的值 #include '【程序填空】 '------------------------------------------------------- '功能:下面的程序段用于实现以下功能:利用冒泡法将一组整数' 从小到大排序。 '------------------------------------------------------- Private Sub Form_Click() Const n = 15 Dim a(1 To n) As Integer, work As Boolean Dim i As Integer, j As Integer, x As Integer Randomize For i = 1 To n a(i) = Int((90 * Rnd) + 10) Next i For i = 1 To n Print a(i); Next i Print '**********SPACE********** For i = n To 2 【?】step-1 work = True For j = 1 To i - 1 If a(j) > a(j + 1) Then x = a(j): a(j) = a(j + 1): a(j + 1) = x '**********SPACE********** 【?】work=False End If Next j '**********SPACE********** If work Then 【?】Exit For Next i For i = 1 To n Print a(i); Next i End Sub 答案 1). Step -1 2). work = False 或work=0 或not work = true 3). Exit For '功能:以下程序用于判断一个正整数(≥3)是否为素数。 '------------------------------------------------------- 2005届计算机专业《VFP》程序填空与阅读试卷汇编一 班级姓名 一、程序填空(每空3分,共27分) 1.有一商场的商品销售数据库XS.DBF,其记录如下: 记录号商品名单价数量总价 1 电冰箱2000 3 6000 2 彩电1800 5 9000 3 电冰箱2010 1 2010 4 空调机1600 2 3200 5 彩电1900 2 3800 …… 下面程序用于分类统计各种商品总的销售数量和总的销售额(总价),并计算出平均 销售单价。 SET TALK OFF USE XS INDE ON __________________ TO SY ____________________ TO TJK USE TJK REPL _____________________ LIST USE SET TALK ON 2.任意输入两个正整数X和Y,求X与Y的最小公倍数。 SET TALK OFF INPUT "X="TO X INPUT "Y="TO Y IF X>Y T=X X=Y Y=T ENDI N=Y DO WHILE N<=__________________ IF ________________ EXIT ENDI N=_______________________ ENDDO ?"最小公倍数是:"+STR(N) SET TALK ON 3.现有一数据库CJ.DBF,该数据库文件中仅有一个数值型字段"数据",且无记录。要求键盘输入十个数,将这些数保存到CJ.DBF的"数据"字段中,并由大到小显示出来。 SET TALK OFF USE CJ K=1 DO WHIL K<=10 _________________ @K+5,1 SAY "第"+STR(K,2)+"数是:" GET 数据 READ __________________ ENDD INDE ON _______________ TO TMP LIST USE SET TALK ON 二、程序填空(每空3分,共18分) 1.男子100米短跑成绩已录入数据库Male100.DBF,现要求将前3名运动员的成绩转入获奖数据库gainer.dbf和gainer.txt文件中。阅读下列程序, 填写空位处的代码,使程序能正确有效地实现上述要求。 set Talk off clear @14,20 say "请稍候…" use Male100 ___________ on 成绩/D To temp use Temp Copy _________________ To gainer.dbf use gainer copy to gainer.txt _________________ use @14,20 say "操作完毕!" Return 2.现有一户籍数据库People.DBF,存贮有该地区各位公民的档案资料,现要求按"出生日期"字段(日期型),以索引查询方式,快速查找并显示所有与指定出生日期相同的记录。 Set Talk off Set Safe off Clear use people Index On 出生日期To Ipeople Born=" / / " @14,20 Say "请输入查询的出生日期:" Get Bom picture _________ Read ________________________ Do while .NOT.EOF( ).AND. _________________ Display Skip Enddo 第一套 1.完成程序填空,实现求两数最小公倍数 #include 《JA V A程序设计》复习题之(三)阅读程序题 三、程序阅读题 1.阅读以下程序 import java.io.*; public class Reverse2 { public static void main(String args[ ]){ int i,n=10; int a[] = new int[10]; try { BufferedReader br = new BufferedReader( new InputStreamReader(System.in)); a[i] = Integer.parseInt(br.readLine() ); } catch (IOException e) { }; for (i= n-1; i >= 0; i=i-2) System.out.print(a[i]+" "); System.out.println(); } } 请写出该程序的功能: 该程序使用字符缓冲输入流从键盘输入10个数,然后倒序并间隔打印出来。 2.阅读以下程序 import java.io.* ; public class abc { public static void main(String args[ ]) { int i, s = 0 ; int a[] = { 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120 }; for ( i = 0 ; i< a.length ; i++ ) if (i % 3 == 0) s += a[i]; System.out.println("s=" + s); } } 请写出该程序的输出结果: s=260 3、阅读以下程序: import java.io.*; public class TestRandomAccess { public static void main(String args[]) { int data_arr[]={65,66,56,23,27,1,43,65,4,99}; try { RandomAccessFile randf=new RandomAccessFile("temp.dat","rw"); for (int i=0; i 程序填空题 1、 #include #include 程序填空 1. 下面程序打印如图所示的杨辉三角形。阅读程序,请填空。 Private Sub Form_click() Dim a(9, 9) As Integer For i = 0 To 9 a(i, i) = 1 a(i, 0) = 1 Next i For i = 2 To 9 M = i - 1 For j = 1 To M a(i, j) = a(i - 1, j) + a(i - 1, j - 1) Next j Next i For i = 0 To 9 For j = 0 To i Print a(i, j); Next j Print Next i End Sub 2.下面的程序是进行加、减、乘、除的程序,运行界面如下图。输入两个操作数和一个运算符,根据运算符决定所进行的运算。阅读程序,请填空。 Private Sub Command1_Click() Dim a As Integer, b As Integer a = Val(Text1.Text) b = Val(Text3.Text) '以下判断运算符 op = Text2 Select Case op Case "+" r = a + b Case "-" r = a - b Case "*" r = a * b Case "/" If b = 0 Then MsgBox "除法运算的操作的除数不能为0" Text3.Text = "" Exit Sub End If r = a / b Case Else MsgBox "运算符非法,请重新输入" Text2.Text = "" Text2.SetFocus Exit Sub End Select Text4 = r End Sub Private Sub Command2_Click() End End Sub Private Sub Form_Load() Text1 = "" Text2 = "" Text3 = "" Text4 = "" End Sub 1、阅读下列程序,说明程序的功能 MOV DPTR,#DATA1 LOOP: MOV R1,#00H HERE: JZ HERE INC DPTR INC R1 SJMP LOOP (分值:4 分) 答案: .功能:统计首址为DATA1的片外RAM中的数组在出现0以前数据的个数(不包括0,且小于255)并存于R1单元中。 片内RAM首址DATA1 统计数组长度(不包括0) 在出现0以前的数组 数组长度小于255,存于CONT单元。 2、见右图,通过8031单片机的P1口接8只发光二极管,读如下程序后回答问题: ORG 0000H LJMP 0200H ORG 0200H START:MOV A,#01H LOOP: MOV P1,A LCALL D2S;调用延时2秒子程序 RL A;A循环左移 SJMP LOOP D2S:……;子程序略 RET END 1.第一次调用子程序时,哪个发光二极管亮? 2.第二次调用子程序时,哪个发光二极管亮? 3. 第八次调用子程序时,哪个发光二极管亮? 4. 第九次调用子程序时,哪个发光二极管亮?(分值:4 分) 答案: 1.L1(最上面的发光二级管)亮,即P1.0C对应的二极管亮 2.L2亮 3.L8亮(最下面的二极管) 4.L1又亮 3、8031外部扩展DAC0831芯片,见右图,输入寄存器为1B28H,DAC寄存器为1B29H,假定00H对应D/A输出0V,FFH对应D/A输出5V,阅读如下程序,回答问题 ORG 0000H LJMP START ORG 0200H START:MOV DPTR,#1B28H MOV A,#0 LP1: MOVX @DPTR,A INC DPTR MOVX @DPTR,A ACALL D1MS;调用1ms子程序 INC A CJNE A,#0FFH,LP1 NOP LP2:MOV DPTR,#1B28H MOVX @DPTR,A INC DPTR MOVX @DPTR,A ACALLL D1MS;调用1ms(1毫秒)子程序 DEC A CJNE A,#0,LP2 SJMP LP1 延时1ms(1毫秒)子程序略去 1.该程序运行后,D/A转换输出( )波形 2.波形周期为( )秒(忽略指令时间) (分值:8 分) 答案: 三角波$0.51秒 4、阅读下列程序段并回答问题。1)、该程序执行何种操作? 2)、已知初值(60H)=23H,(61H)=61H,运行程序后(62H)=? CLR C MOV A,#9AH SUBB A,60H ADD A,61H DA A MOV 62H,A (分值:5 分) 答案: 1)、该程序是单字节BCD码运算,是将(61H)—(60H)→62H 2)、(62H)=38H 5、某8031单片机时钟频率12MHz,T1为工作方式1,2毫秒定时中断,其部分初始化程序如下,请指出错误,并改正之。 MOV TMOD,#01H程序阅读及填空(答案)
程序填空题
C语言程序填空
vb程序阅读题与填空题
C语言程序设计程序填空题库及答案
c语言程序填空题完整
程序填空
程序填空
-程序填空部分试题及答案
c语言程序填空(含答案)
湖南省计算机二级3[1].(6分)程序阅读填空
C语言-程序填空练习题
程序填空
VFP程序填空与阅读试题
c++程序填空十套
Java复习题(三)阅读程序题_软件
C语言程序填空题及答案
程序填空题
程序填空和分析题