教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 资格考试 >

vb程序设计教程龚沛曾版课后答案(2)

来源:网络收集 时间:2026-08-04
导读: 上机验证结果:“缺少子程序、函数或属性” (4)除数为0 上机验证结果:“溢出”。 4. [答案略] 说明:小数位可以使用四舍五入函数Round或输出格式函数Format。例如Round(x, 2)和Format(x, “0.00”)均可使结果只

上机验证结果:“缺少子程序、函数或属性”

(4)除数为0

上机验证结果:“溢出”。

4. [答案略]

说明:小数位可以使用四舍五入函数Round或输出格式函数Format。例如Round(x, 2)和Format(x, “0.00”)均可使结果只保留两位小数。但如果四舍五入后要进行数值运算,则使用Round函数,例如z=Round(x,2)+Round(y,2)。而Format函数通常只用于输出格式设置。

6.指出错误

(1)“≥”应改为“>=”,前者是中文字符,不具有运算功能。

(2)“10<x<20”应改为“10<x And x<20”,否则运行结果错误。

7.写条件语句

(1)

Dim c As String

c = InputBox("c=")

If Mid(c, 3, 1) = "C" Then

MsgBox "Yes"

Else

MsgBox "No"

End If

(2)

# 使用If语句

Dim x As Single, y As Single

x = Val(InputBox("x="))

If x > 20 Then

y = x ^ 2 + 3 * x + 2

ElseIf x >= 10 Then

y = Sqr(3 * x) - 2

ElseIf x > 0 Then

y = 1 / x + Abs(x)

End If

Print "y="; y

# 使用Select Case语句

Dim x As Single, y As Single

x = Val(InputBox("x="))

Select Case x

Case Is > 20

y = x ^ 2 + 3 * x + 2

Case Is >= 10

y = Sqr(3 * x) - 2

Case Is > 0

y = 1 / x + Abs(x)

vb程序设计教程龚沛曾版课后答案

End Select

Print "y="; y

(3)

# 使用If语句

Dim x As Single, y As Single, z As Single, Max As Single

x = Val(InputBox("x="))

y = Val(InputBox("y="))

z = Val(InputBox("z="))

Max = x

If y > Max Then Max = y

If z > Max Then Max = z

Print "Max="; Max

# 使用IIF函数

x = Val(InputBox("x="))

y = Val(InputBox("y="))

z = Val(InputBox("z="))

Max = IIf(x > y, x, y)

Max = IIf(z > Max, z, Max)

Print "Max="; Max

9. 计算循环次数

(1) 6

(2)19

(3)0

(4)死循环直至溢出

10. 40号语句执行 4次;第50 号语句执行12次;

执行第90号语句输出的结果是: 13,0,2

说明:该程序为嵌套循环,其中外循环由j值变化(1,4,7,10)控制执行4次,当j值为13时结束循环;内循环由k值变化(6,4,2)控制执行3次,当k值为0时结束循环。第40 行是外循环的循环体,故执行4次;第50 行是内循环的循环体,故执行4*3=12次。

11. 可以定一个较大的循环次数,在循环体中根据条件用Exit For退出。

但这种情况通常用Do While循环控制。

12. 编程(并非唯一正确答案)

(1)

Dim i As Integer, s As Integer

For i = 1 To 10

s = s + (i + 1) * (2 * i + 1)

Next i

Print "s="; s

(2)

Dim i As Integer, n3 As Integer, n7 As Integer

vb程序设计教程龚沛曾版课后答案

For i = 1 To 100

If i Mod 3 = 0 Then n3 = n3 + 1

If Int(i / 7) = i / 7 Then n7 = n7 + 1

Next i

Print "1-100中3的倍数有"; n3; "个"

Print "1-100中7的倍数有"; n7; "个"

(3)

Dim s1 As String, s2 As String, i As Integer

s1 = InputBox("Input String")

s2 = ""

For i = 1 To Len(s1)

s2 = Mid(s1, i, 1) + s2

Next i

Print "原序:"; s1

Print "反序:"; s2

For i = Len(s1) To 1 Step -1

s2 = s2 + Mid(s1, i, 1)

Next i

13. 输出字符串“10100”。该程序功能是将十进制数转化为二进制。

说明:要理解该程序需要了解数制转换的计算方法(有兴趣者参看百度百科/view/1426817.htm)。48是字符"0"的ASCII码。

14. 运行时输出 22 484

该程序功能是求x和y最大公约数和最小公倍数。

说明:此算法称为“辗转相减法”。可对照例4.17的辗转相除(辗转求余)法。

15.[50,100]间的20个随机数,求最大值、最小值、平均值。

Dim x As Integer, sum As Integer, aver As Single

Dim n%, i%, max%, min%

Randomize

max = 50: min = 100: n = 20

For i = 1 To n

x = Int(Rnd * 51 + 50)

List1.AddItem x

sum = sum + x

If x > max Then max = x

If x < min Then min = x

Next i

aver = sum / n

Print "最大值:"; max, "最小值:"; min, "平均值:"; aver习题五

1. 指定数组的默认下界 Option Base 1

2.合理的数组声明

vb程序设计教程龚沛曾版课后答案

(1)错。定义数组不可用变量(教材99页)。

(2)正确。该数组下标为0-11。

(3)错。VB中数组下标用圆括号。

(4)正确。三维数组三个下标分别为0-1,0-1,0-2,共12个元素。

(5)错误。非动态数组,不可重定义。

(6)错误。动态数组重定义时不可改变数据类型。

(7)正确。二维数组两个下标分别为0-2,0-3,共12个元素。

(8)语法错误,二维数组定义中漏写逗号——可能是印刷错误,加上此逗号则正确。

3.当引用数组元素时下标值小于定义的最小下标,或大于最大下标时,会发生“下标越界”错误。

4.数组名:a ;数组类型:Single(单精度浮点型);维数:二维;

各维的上下界:第一维下界(最小下标)为 -1,上界(最大下标)为2,

第二维下界(最小下标)为 0,上界(最大下标)为3;

数组的大小:4行4列共16个元素

以矩阵的格式输出二维数组:

For i = -1 To 2

For j = 0 To 3

Print a(i, j);

Next j

Print

Next i

或写成更加通用的代码形式:

For i = LBound(a, 1) To UBound(a, 1)

For j = LBound(a, 2) To UBound(a, 2)

Print Tab(j * 8); a(i, j);

Next j

Print

Next i

6.一维字符数组

Dim a(1 To 20) As String

Private Sub Command1_Click() '(1)随机产生字符串

Dim i As Integer, j As Integer, n As Integer, c As String * 1

Randomize

For i = 1 To 20

a(i) = "" '将第i个元素清空

n = Int(Rnd * 10 + 1) '产生[1,10]的随机数

For j = 1 To n 'a(i)中有n个字符

c = Chr(Int(Rnd * 26 + 97)) '随机产生字母97是字母a的ASCII码

a(i) = a(i) + c

Next j

Next i

End Su …… 此处隐藏:2975字,全部文档内容请下载后查看。喜欢就下载吧 ……

vb程序设计教程龚沛曾版课后答案(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/105895.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)