早教吧作业答案频道 -->其他-->
编程题(1)从键盘输入8个数,用冒泡法排序。当输入数值0,按升序输出;当输入数值1,按降序输出。(2)从键盘输入两个矩阵A、B的值,求C=A+B。
题目详情
编程题 (1)从键盘输入8个数,用冒泡法排序。当输入数值0,按升序输出;当输入数值1,按降序输出。 (2)从键盘输入两个矩阵A、B的值,求C=A+B 。
▼优质解答
答案和解析
思路是这样:
以升序为例,数字两两比较,如果后一个数小于前一个数,就交换位置,否者位置不变,然后继续比较第二和第三个数字,直到8个数全部比较完(用循环语句),降序排列直接把升序的位置颠倒输出就可以了。以下是我前几天刚好上VB课的排序,你可以参考以下,你复制出来,存为VBS格式就可以运行。
Option Explicit
Sub pailie()
Dim arr(500),m
Do
m=inputbox ("输入排序数字个数,不超过500","标题")
If isnumeric(m) Then
If m<=500 and m>=2 Then
Call ctrl '输入数据
Call sq()
Exit Do
else
Msgbox"必须是2-500"
End If
Else
msgbox"必须是数字"
End If
Loop
End sub
Sub ctrl() '控制输入数据类型
Dim k,i,j,result 'k控制输入循环变量
For k= 0 To m-1
do
arr(k)=inputbox("输入数字"&k+1,"数据输入")
If isnumeric(arr(k)) Then
Exit do
Else
msgbox"请输入数字"
End If
loop
Next
For i=0 To m-1
arr(i)=CDbl(arr(i))
Next
For j=0 To m-1
result = result&" "&arr(j)
next
Msgbox result,,"排列前"
End Sub
Sub sq() '排序
Dim i,j,k,result '排序使用的循环变量
Dim temp '临时储存变量
For i=0 To m-1
For j=i+1 To m-1
If arr(i)>arr(j) then
temp=arr(i)
arr(i)=arr(j)
arr(j)=temp
End If
Next
Next
For k=0 To m-1
result = result&" "&arr(k)
next
Msgbox result,,"排列后"
Msgbox typename(arr(0))
End Sub
以升序为例,数字两两比较,如果后一个数小于前一个数,就交换位置,否者位置不变,然后继续比较第二和第三个数字,直到8个数全部比较完(用循环语句),降序排列直接把升序的位置颠倒输出就可以了。以下是我前几天刚好上VB课的排序,你可以参考以下,你复制出来,存为VBS格式就可以运行。
Option Explicit
Sub pailie()
Dim arr(500),m
Do
m=inputbox ("输入排序数字个数,不超过500","标题")
If isnumeric(m) Then
If m<=500 and m>=2 Then
Call ctrl '输入数据
Call sq()
Exit Do
else
Msgbox"必须是2-500"
End If
Else
msgbox"必须是数字"
End If
Loop
End sub
Sub ctrl() '控制输入数据类型
Dim k,i,j,result 'k控制输入循环变量
For k= 0 To m-1
do
arr(k)=inputbox("输入数字"&k+1,"数据输入")
If isnumeric(arr(k)) Then
Exit do
Else
msgbox"请输入数字"
End If
loop
Next
For i=0 To m-1
arr(i)=CDbl(arr(i))
Next
For j=0 To m-1
result = result&" "&arr(j)
next
Msgbox result,,"排列前"
End Sub
Sub sq() '排序
Dim i,j,k,result '排序使用的循环变量
Dim temp '临时储存变量
For i=0 To m-1
For j=i+1 To m-1
If arr(i)>arr(j) then
temp=arr(i)
arr(i)=arr(j)
arr(j)=temp
End If
Next
Next
For k=0 To m-1
result = result&" "&arr(k)
next
Msgbox result,,"排列后"
Msgbox typename(arr(0))
End Sub
看了 编程题(1)从键盘输入8个数...的网友还看了以下:
关于电工电子的问题1请问放大电路中要增大输出电阻减小出入电阻请问要引入什么反馈!2放大电路中,当输 2020-05-17 …
C语言问题求助第4章分支程序设计1.输入若干整数给x,使用if语句输出x的绝对值,当输入0时结束。 2020-06-09 …
给出下列程序:,已知当输入x值为1时,输出值为1;已知当输入x值为-1时,输出值为-3;当输入x值 2020-06-14 …
给出下列程序:输入x→×k→+b→输出,当输入的值为1时,输出的值为1;当输入的值为-1时,输出的 2020-06-14 …
入1,输出1/2,输入2,输出2/5,输入3.输出3/10,输入4,输出4/17当输出的数是122 2020-06-15 …
高手来做二元一次方程!1.给出下列程序:输入X→立方→xk→+b→输出,且已知当输入的x的值为1时 2020-07-13 …
编程题(1)从键盘输入8个数,用冒泡法排序。当输入数值0,按升序输出;当输入数值1,按降序输出。( 2020-07-23 …
.某逻辑电路有三个输入:A、B和C,当输入相同时,输出为1,否则为0.列出此逻辑事件的真值表.某逻辑 2020-12-09 …
初一大姐姐不会做的数学题目1.给出下列程序:输入X-----立方------乘以K-----加b-- 2020-12-31 …
先阅读如图所示框图,再解答有关问题:(1)当输入的n分别为1,2,3时,a各是多少?当输入已知量n时 2021-01-15 …