VB程序改错40题含答案(3)

2019-03-11 12:33

=======(答案3)======= N = N - 1

第20题 (1.0分) 题号:139 '【程序改错】

'题目:随机产生并输出100以内大于50的20个整数,输 ' 出时每5个数一行。 Option Explicit

Private Sub Form_Click() Randomize Timer

Dim i As Integer, ma As Integer i = 1

Do Until i < 20

ma = Rnd() * 100 \\ 1 If ma > 50 Then Print ma; i = i + 1 If i \\ 5 = 0 Then Print End If End If Loop End Sub 答案:

=======(答案1)======= i = 0

=======(答案2)======= Do while i < 20

=========或========= Do while 20 > i

=========或========= Do while i <=19

=========或========= Do while 19 > =i

=======(答案3)======= If i mod 5 = 0 Then

第23题 (1.0分) 题号:474 '【程序改错】

'题目:程序功能为求解一元二次方程的实根,请修正程序中错误。 Option Explicit

Private Sub Form_Load()

Dim a!, b!, c!, root1#, root2#, work As Double a = Val(InputBox(\请输入系数a的值\ b = Val(InputBox(\请输入系数b的值\ c = Val(InputBox(\请输入系数c的值\

work = b * 2 - 4 * a * c If work >= 0 And a <> 0 Then

root1 = (Sqr(work)) / (2 * a)

root2 = (Sqr(work)) / (2 * a)

Debug.Print \有二个实根\ Else

Debug.Print \无实根!\ End If End Sub 答案:

=======(答案1)======= work = b ^ 2 - 4 * a * c =========或========= work = b *b - 4 * a * c =======(答案2)=======

root1 = (-b + Sqr(work)) / (2 * a) =========或=========

root1 = ( Sqr(work) -b ) / (2 * a) =========或=========

root1 = (-b + Sqr(work)) / ( a*2) =========或=========

root1 = ( Sqr(work) -b ) / ( a*2) =======(答案3)=======

root2 = (-b - Sqr(work)) / (2 * a) =========或=========

root2 = (- Sqr(work) - b) / (2 * a) =========或=========

root2 = (-b - Sqr(work)) / ( a*2) =========或=========

root2 = (- Sqr(work) - b) / (a*2) 第28题 (1.0分) 题号:133 '【程序改错】

'题目:下面程序将10个整数从大到小排序 Option Explicit

Private Sub Form_Click() Dim t%, m%, n%, w% Dim a(10) As Integer For m = 1 To 10

a(m) = Int(10 + Rnd() * 90) Print a(m); \Next m Print

For m = 1 To 9 t = m

For n = 2 To 10

If a(t) > a(n) Then n = t Next n

If t = m Then w = a(m) a(m) = a(t) a(t) = w

End If Next m

For m = 1 To 10 Print a(m) Next m End Sub 答案:

=======(答案1)======= For n = m + 1 To 10 =======(答案2)======= If a(t)

If a(n) >a(t) Then t = n =======(答案3)======= If t <> m Then =========或========= If not t = m Then =========或========= If not m = t Then

第30题 (1.0分) 题号:480 '【程序改错】

'题目:下面函数的功能是:求变量s(s=a+aa+aaa+aaaa+??) ' 的值。其中,a是一个0-9的数字,总共累加a项。 ' 例如,当a=3时,s=3+33+333 (共累加3项)。 Option Explicit

Public Function Calc(a As Integer) Dim s As Long Dim t As Long Dim i As Integer s = a

t = 1

For i = 2 To a

t = t + a s = s + t Next i Calc = s Print s End Function

Private Sub Command1_Click() Dim i As Integer

i = InputBox(\请输入数字(0-9):\

Calc call i End Sub 答案:

=======(答案1)======= t = a

=======(答案2)======= t = t * 10 + a

=========或========= t = t * 10 + a

=========或========= t = t * 10 + a

=======(答案3)======= Calc i

=========或========= Call Calc(i)

=========或========= Calc (i)

第31题 (1.0分) 题号:489

'------------------------------------------------ '【程序改错】

'------------------------------------------------ '题目:给定三角形的三条边,计算三角形的面积。要求 ' 程序首先判断给定的三条边能否构成三角形。 '------------------------------------------------ Option Explicit

Private Sub Form_Click()

Dim a As Single, b As Single, c As Single Dim s As Single, t As Single start:

a = InputBox(\输入1边长:\ b = InputBox(\输入2边长:\ c = InputBox(\输入3边长:\

If a + b < c Or b + c < a Then

MsgBox (\不能构成三角形,请重新输入个边\ GoTo start End If

t = (a + b) / 2

s = Sqr((t - a) * (t - b) * (t - c)) Print \该三角形的面积:\End Sub 答案:

=======(答案1)=======

If a + b < c Or b + c < a Or a + c < b Then =======(答案2)======= t = (a + b + c) / 2 =========或========= t = (a + b + c ) / 2 =======(答案3)=======

s = Sqr(t * (t - a) * (t - b) * (t - c)) =========或=========

s = Sqr( t * (t - a) * (t - b) * (t - c) )

第32题 (1.0分) 题号:475

'------------------------------------------------ '【程序改错】

'------------------------------------------------

'题目:本程序求3~100之间的所有素数(质数)并统计个数;

' 同时将这些素数从小到大依次写入顺序文件c:\\dataout.txt; ' 素数的个数显示在窗体Form1上。

'------------------------------------------------ Option Explicit

Private Sub Command1_Click()

Dim Count As Integer, Flag As Boolean Dim t1 As Integer, t2 As Integer

Open \ Count = 0

For t1 = 3 To 100 Flag = True

For t2 = 2 To Int(Sqr(t1))

If t1 Mod t2 = 0 Then Flag = False Next t2

If Flag = False Then Count = Count + 1

Write #1, t2 End If Next t1

Form1.Print \素数个数\ Close #1 End Sub 答案:

=======(答案1)=======

Open \=========或=========

Open \=======(答案2)======= If Flag Then

=========或========= If Flag=true Then

=======(答案3)======= Write #1, t1

=========或========= Write 1, t1

第33题 (1.0分) 题号:137

'------------------------------------------------ '【程序改错】

'------------------------------------------------ '题目:求s=72+102+132+??832的值。

'------------------------------------------------


VB程序改错40题含答案(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2019年中国工程机械租赁市场现状研究分析与发展趋势预测报告目录

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: