条形码 | 物品名称 | 单位 | 进价 | 入库 | 出库 | 库存 |
6917887800263 | 花生油 | 瓶 | 上浮 | 192 | 25 | 167 |
6959479300330 | 苹果 | 箱 | 下降 | 22 | 0 | 22 |
6940863609702 | 奥利奥 | 包 | 不变 | 12 | 10 | 2 |
6971097940026 | 核桃 | 包 | 上浮 | 128 | 8 | 120 |
s=0:k=0
For i=1 to 7 step 2
If i<=1 then
k=k+1
Elseif i<=2 then
k=k+2
Elseif i<=3 then
k=k+3
End if
s=s+k
Next i
该程序段运行后,s值是( )
n=6
k=Val(Text1.Text)
For j=i-1 To n
temp= a(i)
For j=i-1 To ① Step-1
a(j+ 1) = a(j)
Next j
a( ② )= temp
Next i
Const n=5
Dima(1 to n) as integer,c(1 to n) as integer
For i=1 to n
a(i)=int (rnd*10)+1
c(a(i))=c(a(i))+1
Next i
For i=10 to 1 step -1
For j=1 to c(i)
Text1.Text = Text1.Text + Str(i)
Next
Next i
执行以上程序段后,Text1 中显示的值可能是( )
Private Sub Command1 Click)
Const n=9 '总人数
Dim b(1 Ton) As Integer
Dim k As Integer, i As Integer, p As Integer, cnt As Integer, pre. p As Integer
k =Val(Text1. Text)
For i= 1 Ton
b(i)=iModn+1
Next i
p = n:i = 0:cnt=0
Do While i<n
pre_p = p
p= ①
cnt=cnt+1
If cnt=k Then
List1. AddItem Str(p)
b(pre_p) ②
cnt=0
i= i+1
End If
Loop
End Sub
编写VB程序实现上述功能,运行程序在列表框List1中显示排序前学生数据。单击“统计”按钮,在列表框List2中显示排序后的结果,并且在Label1中显示男生女生平均分比对结果。程序运行界面如15题图所示。
Dim a(1 To 100) As Integer
Const n = 50 ‘共50位同学
Private Sub Comand1 Click)
Dim sum As Integer, sum As Integer, m As Integer
summ=0:sumw=0:m=0
For i=
k=i
For j=i+1 To n
If or a(k*2-1)=a(2*j-1) And a(j*2)>a(k*2) Then k=j
Next j
If k<>i Then
t1=a(i *2- 1): a(i *2- 1)=a(k*2- 1): a(k*2-1)=t
t2 = a(i * 2): a(i*2)=a(k*2):a(k*2)=t2
End If
summ = summ + a(2*i-1)*a(2*i)
sumw = sumw +
m=
Next i
List2. AddItem “性别”“+”“成绩"
For i=1 To n
List2. AddItem Str(a(i *2- 1)) +“”+ Str(a(i * 2))
Next i
If summ/m>sumw/(n-m)Then
Label1. Caption = "男生平均分高”
Elself summ/m<sumw/(n-m)Then
Label1. Caption =“女生平均分高”
Else
Label1. Caption =“男生女生平均分相同”
End If
End Sub
Private Sub Form Load()
‘从数据库中读取数据,存在数组a中,数组元素a(1)和a(2)分别存储第一个学生的性别和成绩:数组元素a(3)和a(4)分别存储第二个学生的性别和成绩:以次类推存储其他学生的相关数据:将原始数据显示在List1中,代码略。
End Sub
例如能力值分别为“1,2,2,3,4,5”进行分组,分成两种方案:
方案一,可以分(2)和(1,2,3,4,5)两组:
方案二,可以分(1,2)和(2,3,4,5)两组:
可见,方案二分组中人数最少的组人数更多,因此该方案更优。根据上述要求编写VB程序,程序运行界面如16题图所示。
Private Sub Command1 Click()
Dim a(1000) As Integer, q(1000) As Integer
Dim top As Integer '表示分组数量
Dim sum(000 As Integer '存储每组的人数
‘初始化得到n位同学的能力值,分别存储在a(1)-a(n)中,并升序排序,代码略
top=0
For k= 1To n
i=0:j =top
Do While i< j
m=(i+j+1)\2
If q(m)<=a(k) Then
Else
j=m-1
End If
Loop
If q(i) <> a(k) Then
top=top+1
sum(top) = 1
Else
sum(i) = sum(i) + 1
End If
Next k
ans = sum(1)
For k= 2 To top
If sum(k) < ans Then ans = sum(k)
Next k
Label1. Caption = “人数最少的一组人数最多为” + Str (ans)
End Sub