好文档 - 专业文书写作范文服务资料分享网站

vb基础第6章 数组 编程及上机调试

天下 分享 时间: 加入收藏 我要投稿 点赞

第六章 数组 编程及上机调试

按照下列各题的要求进行编程练习。各题的程序文件名分别为ex0601(第1题)~ex0607(第7题),保存在学号姓名用户文件夹中。

1. 某同学编写了如下程序,通过随机函数生成10个正整数,存放在数组中,然后查找这10个数中的最小数及其位置(即下标)。

Private Sub Comnmand1_Click()

Dim a(10) As Integer, min As Integer, pos As Integer Randomize For i = 1 To 10

a(i) = Int(Rnd * 90 + 10) Print a(i); Next i Print min = a(1) pos = 0

For k = 2 To 10

If a(k) < min Then min = a(k) End If pos = k Next k

Print \最小数:\位置:\End Sub

运行程序后发现,大多数情况下,程序显示的最小数位置是错的,程序需要修改。请从下面修改方案中选择一个或多个正确选项,并上机验证修改后的程序。

A. 把 min = a(1) 改为 min = 0 B. 把pos = 0 改为pos = 1

C. 把 If a(k)min Then D. 把pos = k与End If的位置互换 2. 设有如下两个组数:

第1组:3,4,2,1,5,7,8,11,13 第2组:10,6,12,9,13,8,8,1,16

设计一个程序,使用Array函数将上述两组数分别读入两个一维数组a和b中,然后将这两个数组中对应的元素相加,其结果放人第三个数组c中(c也是一维数组),最后输出数组c 中的数据。

3. 输入一个正整数n,再定义一个有n个元素的一维数组,生成n个-50~50范围内的随机整数,保存到数组中,然后将数组两端的元素对调,即将第1个元素与第n个元素对调,将第2个元素与第n-1个元素对调??,分别输出对调前、后的数组元素。

4. 编写程序,用数组建立一个8×8的矩阵,数组元素值是10?99范围内的随机整数,求解下列问题并输出结果:

(1)求所有元素之和; (2)求各行元素之和;

(3)求主对角线元素之和; (4)求所有靠边元素之和。

5.设计程序,随机产生64个100?999范围内的整数,存放在8X8数组中,然后找出该数组中最大值的元素(若有多个最大值元素,只需找出其中一个),并输出其值及行号和列号(行号和列号都从1算起)。

6.在窗体WinForm1中建立1个单选按钮组Opt1和1个命令按钮Cmd1,单选按钮组包含3个单选按钮,其标题分别为“单选1”、“单选2”和“单选3”,下标分别为0,1和2。初始状态下,“单选2”单选按钮被选中,以后每次单击命令按钮时,依次选中1个单选按钮。

7. 产生20个互不相同的10?99随机整数,完成下列程序。

【提示】设数组为a(),要实现数组元素互不相同,每当生成一个新数时,用此数与前面每一个元素,即a(1)?a(k)比较,若与前面的元素不同(标记f值为0),则将该数作为数组元素a(k+1);若与前面的元素相同(标记f值为1),则将该数丢弃。然后再生成一个新数,再进行比较,照此进行下去。

Private Sob Form_Load()

Dim a(20) As Integer Randomize a(1) = Int(10 + 90 * Rnd) '产生第一个随机数 k=1 'k録随机数的个数 Do While k<20

x = Int(10 + 90 * Rnd) ’产生一个随机数 f = 0 ‘f标记是否存在相同数,0表示未找到相同数 For j=1 To k ‘从a(1)?a(k)中判定数值x是否已经存在 If x=a(j) Then

_____(1)_____ Exit For End If Next j

If f = 0 Then ‘若不存在相同数,则保存 k= _____(2)_____ _____(3)_____ End If Loop Show

For j =1 To 20 ’输出结果 Print a(j) Next) End Sub

vb基础第6章 数组 编程及上机调试

第六章数组编程及上机调试按照下列各题的要求进行编程练习。各题的程序文件名分别为ex0601(第1题)~ex0607(第7题),保存在学号姓名用户文件夹中。1.某同学编写了如下程序,通过随机函数生成10个正整数,存放在数组中,然后查找这10个数中的最小数及其位置(即下标)。PrivateSubComnmand1_Clic
推荐度:
点击下载文档文档为doc格式
2pzj01reth1qw0b8cvba7dd7d92whi01aol
领取福利

微信扫码领取福利

微信扫码分享