VB程序改错40题(4)

2019-08-31 11:55

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分)

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

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

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

'------------------------------------------------ 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的值\ '**********FOUND********** work = b * 2 - 4 * a * c If work >= 0 And a <> 0 Then '**********FOUND********** root1 = (Sqr(work)) / (2 * a) '**********FOUND********** 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分)

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

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

'题目:下面程序将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

'**********FOUND********** For n = 2 To 10 '**********FOUND********** If a(t) > a(n) Then n = t Next n

'**********FOUND********** 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) a(t) Then t = n

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

第30题 (1.0分)

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

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

'题目:下面函数的功能是:求变量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

'**********FOUND********** t = 1

For i = 2 To a

'**********FOUND********** 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):\ '**********FOUND********** 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分)

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

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

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

'------------------------------------------------ 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边长:\ '**********FOUND********** If a + b < c Or b + c < a Then

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

'**********FOUND********** t = (a + b) / 2

'**********FOUND**********

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


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

下一篇:2010年全国各地高考历史试题分章节汇总(岳麓版选修一至六)

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

马上注册会员

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