早教吧 育儿知识 作业答案 考试题库 百科 知识分享

解题思路单击"读数据"按钮,运用文件操作把考生文件夹下in5.dat文件中的100个正整数读入数组a中,同时显示在Text1文本框中;并运用Space函数使数值之间空一个格,在Command2Click事件过程中,

题目详情
【解题思路】单击"读数据"按钮,运用文件操作把考生文件夹下in5.dat文件中的100个正整数读入数组a中,同时显示在Text1文本框中;并运用Space函数使数值之间空一个格,在Command2 Click 事件过程中,判断Len(Text1.Text)是否为0,如果为0,弹出MsgBox对话框 "请先执行"读数据"功能!",然后进行分组排序处理,首先通过循环判断数组a中所有3的倍数的元素,并把该元素存入数组b中,运用冒泡排序对数组b中的元素从小到大排序后显示在文本框Text2中.
程序提供代码
Option Base 1
Dim a(100) As Integer,num As Integer
Private Sub Command1_Click()
Dim k As Integer
   Open App.Path & "\in5.dat" For Input As #1
   For k = 1 To 100
    Input #1,a(k)
    Text1 = Text1 + Str(a(k)) + Space(1)
Next k
Close #1
End Sub
Private Sub Command2_Click()
Dim b(100) As Integer
num = 0
If Len(Text1.Text) = 0 Then
    MsgBox "请先执行"读数据"功能!"
Else
'考生编写(功能:生成 b 数组,且按从小到大顺序排序)
'注意:请务必将数组 b 的元素个数存入变量 num 中
'以下程序段将已排序的 b 数组显示在Text2中
   For i = 1 To num
    Text2.Text = Text2.Text + Str(b(i)) + Space(2)
   Next i
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
Open App.Path & "\out5.dat" For Output As #1
Print #1,Text2.Text
Close #1
End Sub
程序结束
n = 0
For k = 1 To 100
If a(k) Mod 3 = 0 Then
num = num + 1
b(num) = a(k)
End If
Next k
For i = 1 To num
f = True
For j = 1 To num - 1
If b(j) > b(j + 1) Then
t = b(j)
b(j) = b(j + 1)
b(j + 1) = t
f = False
End If
Next j
If f Then
Exit For
End If
Next i
请问代码里f=true,f=false是什么意思.事先也没有声明
▼优质解答
答案和解析
f是标志位用来判断前后两个数是否交换位置,如果交换过f=false,如果没有则f=true说明这些数是从小到大排列好的直接跳出
看了解题思路单击"读数据"按钮,运...的网友还看了以下: