
两个数的排序,只需要比较一下,如果第一个比第二个大,交换一下,否则什么都不用做。
三个数的排序 ,可以先将前两个排序,保证第一个比第二个小。
然后将第二个和第三个数排序,保证第二个比第三个小。
经过上面两次排序,保证了第三个是最大的,但不能保证第二个还比第一个大,因为第二次排序的时候可能改变了第二个数。因此,还要再将前两个数进行排序。最终保证了三个整数从小到大排列。
楼主您好!
代码如下:
Option ExplicitPrivate Sub Form_Load()
Dim Number(3) As Double
Dim i As Integer
Dim StrMsg As String
StrMsg = StrMsg & "您输入的三个数分别为:" & vbCrLf
For i = 1 To 3
Number(i) = Val(InputBox("请输入第3个数!这是第" & CStr(i) & "个数", "提示窗口"))
StrMsg = StrMsg & "第" & CStr(i) & "个数为:" & CStr(Number(i)) & vbCrLf
Next i
For i = 1 To 2
If Number(i) > Number(i + 1) Then
Max Number(i), Number(i + 1)
End If
Next i
For i = 1 To 2
If Number(i) > Number(i + 1) Then
Max Number(i), Number(i + 1)
End If
Next i
StrMsg = StrMsg & "排序后的三个数分别为:" & vbCrLf
For i = 1 To 3
StrMsg = StrMsg & "第" & CStr(i) & "个数为:" & CStr(Number(i)) & vbCrLf
Next i
StrMsg = StrMsg & "谢谢使用!" & vbCrLf & " 软件作者:百度网友1372355088"
MsgBox StrMsg, 64 + vbOKCancel + vbDefaultButton1, "排序结果"
End Sub
Private Function Max(X As Double, Y As Double) As Double
Dim Z As Double
If X > Y Then
Z = X
X = Y
Y = Z
End If
End Function
public static void main(String[] args) {
int k;
Systemoutprint("请输入第一个数:");
Scanner str1 = new Scanner(Systemin);
int max = IntegerparseInt(str1next());
Systemoutprint("请输入第二个数:");
Scanner str2 = new Scanner(Systemin);
int min = IntegerparseInt(str2next());
if(max < min ){
k=max;
max= min;
min = k;
}
Systemoutprint("请输入第三个数:");
Scanner str3 = new Scanner(Systemin);
int mid = IntegerparseInt(str3next());
if(mid>max){
k=max;
max= mid;
mid = k;
}else if(mid<min){
k=mid;
mid= min;
min = k;
}
Systemoutprintln("max:"+max+",mid:"+mid+",min:"+min);
}
#include
void
main()
{
float
a[3]={0},b;//将三个数存入实数型数组
int
i,j;
cout<<"请输入三个数a,b,c"<
>a[0]>>a[1]>>a[2];
for(i=0;i<2;i++)//选择排序法
for(j=i;j<3;j++)
if(a[i]>a[j])
{
b=a[i];a[i]=a[j];a[j]=b;
}
cout<<"三个数从小到大的顺序为:"<
评论
0
0
0
加载更多
以上就是关于c语言实现三个数从小到大排列全部的内容,包括:c语言实现三个数从小到大排列、VB三个数排序程序、Java程序设计从键盘输入三个数,并对三个数排序,按降序显示三个数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)