当前位置:编程学习 > VB >>

求vb上机题库

要上机模拟试题

补充:我要的是上机模拟题。

答案:VB上机练习题:

1. 输入圆的半径,求圆的周长和面积。
2. 输入三角形的三条边,求三角形的面积。
3. 交换两个变量a和b的值。
4. 输入三个数,输出其中最大的数。
5. 一个笼子里有鸡和兔共35只,脚94只,鸡和兔各有几只?
6. 编程求100以内能被3带队的所有整数。
7. 输入长方体的长、宽、高,求长方体的体积和表面积。
8. 从键盘上输入一个三位整数,然后将它反向输出。
9. 编写程序求平面中两点间的距离。
10. 编写一元二次方程的求解程序,要求能够判断方程是否有根,如果没有根则给出相应的提示信息。
11. 输入一个数n,判断它是否为素数。
12. 已知S=1+2+3+……+N,编写程序,找出一个最大整数N,使得S<30000。
13. 编写程序,输出如下图形:
*******
*****
  ***
   *

 

答案:

 

 

1、
Private Sub Command1_Click()
Do
r = Val(InputBox("请输入圆的半径(>0):"))
Loop Until r > 0
Print "圆半径为:"; r
Print "圆的周长是:"; 2 * 3.1415926 * r
Print "圆的面积为:"; r * r * 3.1415926
End Sub

2、
Private Sub Command1_Click()
Dim 边长(3) As Single
For i = 1 To 3 '输入三个边长,不得小于等于0
Do
边长(i) = Val(InputBox("请输入三角形的第" & i & "条边的边长(>0):"))
Loop Until 边长(i) > 0
Next i
For i = 1 To 2 '排序
For j = i + 1 To 3
If 边长(i) < 边长(j) Then
t = 边长(i)
边长(i) = 边长(j)
边长(j) = t
End If
Next j
Next i
If 边长(1) > 边长(2) + 边长(3) Then   '两短边的和小于长边,不能构成三角形!
MsgBox "你输入的数据:" & 边长(1) & "、" & 边长(2) & "、" & 边长(3) & "不能构成三角形!"
Exit Sub
End If
Print "三角形三边为:"; 边长(1); 边长(2); 边长(3)
s = (边长(1) + 边长(2) + 边长(3)) / 2
Print "三角形面积为:"; Sqr(s * (s - 边长(1)) * (s - 边长(2)) * (s - 边长(3))) '这个公式,你自己再看一下,我记不准了
End Sub

3、
前面已经有了

4、
前面已经有了

5、
Private Sub Command1_Click()
Do
头 = Int(InputBox("请鸡兔的头数(>0):"))
Loop Until 头 > 0
Do
脚 = Int(InputBox("请鸡兔的脚数(大于等于2倍的头数,且为偶数):"))
Loop Until (脚 >= 2 * 头) And (脚 Mod 2 = 0)
兔 = (脚 - 2 * 头) / 2
Print "鸡兔同。其首" & 头 & ",其脚" & 脚 & "。"
Print "兔的数量一共有:"; 兔
Print "鸡的数量一共有:"; 头 - 兔
End Sub

6、
“能被3带队”不知道是啥意思

7、
Private Sub Command1_Click()
Do
长 = Int(InputBox("请输入长(>0):"))
Loop Until 长 > 0
Do
宽 = Int(InputBox("请输入宽(>0):"))
Loop Until 宽 > 0
Do
高 = Int(InputBox("请输入高(>0):"))
Loop Until 高 > 0
Print "长方体长宽高分别为:"; 长; 宽; 高
Print "其体积为:"; 长 * 宽 * 高
Print "其表面积为:"; 2 * (长 * 宽 + 长 * 高 + 宽 * 高)
End Sub

8、
Private Sub Command1_Click()
Do
数 = Int(InputBox("请输入一个三位整数(>0):"))
Loop Until 数 > 99 And 数 < 1000
Print "你输入的是:"; 数
字符串 = Trim(Str(数))
反序 = ""
For i = 1 To 3
反序 = Mid(字符串, i, 1) & 反序
Next i
Print "其逆序数字为:"; 反序
End Sub

9、
已知条件不明。

10、
Private Sub Command1_Click()
Dim a(2) As Single
For i = 2 To 0
a(i) = Val(InputBox("请输入" & i & "次项的系数(2次项系数不得为零):"))
Next i
If a(2) = 0 Then
MsgBox "二次项系数为零,哪里还叫二次方程!"
Exit Sub
End If
delta = a(1) * a(1) - 4 * a(2) * a(0)
If delta < 0 Then
MsgBox "判别式小于零,该方程无实根!"
Exit Sub
End If
Print a(2); "X^2";
If a(1) > 0 Then
Print "+"; a(1);
ElseIf a(1) < 0 Then
Print a(1);
End If
If a(0) > 0 Then
Print "+"; a(0);
ElseIf a(0) < 0 Then
Print a(0);
End If
Print "=0"
If delta = 0 Then
Print "有唯一解:"; -a(1) / 2 / a(2)
Else
delta = Sqr(delta)
Print "有两个实数解:"
Print "X1="; (-a(1) - delta) / 2 / a(2)
Print "X2="; (-a(1) + delta) / 2 / a(2)
End If
End Sub

11、
Private Sub Command1_Click()
Dim 质数 As Boolean
Do
a = Int(InputBox("请输入要判断的数(>2):"))
Loop Until a > 2
质数 = True
For i = 2 To Sqr(a)
If a Mod i = 0 Then
质数 = False
Exit For
End If
Next i
If 质数 Then
Print a; "是指数。"
Else
Print a; "不是质数。可以被"; i; "整除"
End If
End Sub

12、
Private Sub Command1_Click()
n = 0
Do
n = n + 1
s = s + n
Loop Until s > 30000
Print "n="; n - 1
Print "s = "; s - n
End Sub

13、
Private Sub Command1_Click()
For i = 4 To 1 Step -1
Print Tab(5 - i);
For j = 1 To 2 * i - 1
Print "*";
Next j
Print
Next i
End Sub

上一个:VB 数组 判断 txt
下一个:VB读取文本文件记录

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,