c语言,输入3个数,按从大到小的顺序输出,要用三种方法
8个回答
展开全部
1、
#include <stdio.h>
int main()
{
int a,b,c,t;
scanf("%d %d %d",&a,&b,&c);
if ( a < b )
{
t = a;
a = b;
b = t;
}
if( a < c )
{
t = a;
a = c;
c = t;
}
if( b < c )
{
t = b;
b = c;
c = t;
}
printf("%d %d %d",a,b,c);
return 0;
}
2、冒泡排序
#include <stdio.h>
int main()
{
int i,j,t;
int a[3];
for ( i = 0; i < 3; i++ )
{
scanf("%d",&a[i]);
}
for ( j = 0; j < 2; j++ )
{
for ( i = 0; i < 2 - j; i++ )
{
if ( a[i] < a[i+1] )
{
t = a[i];
a[i] = a[i+1];
a[i+1] = t;
}
}
}
for ( i = 0; i < 3; i++ )
{
printf("%d ",a[i]);
}
printf("\n");
return 0;
}
3、选择排序
#include<stdio.h>
#define M 3
void main()
{
int b[M],i,j,t,k;
for(i=0;i<M;i++)
scanf("%d",&b[i]);
for(i=0;i<M-1;i++)
{
k=i;
for(j=i+1;j<M;j++)
if(b[k]<b[j])
k=j;
if(i!=k)
{
t=b[i];
b[i]=b[k];
b[k]=t;
}
}
for(i=0;i<M;i++)
printf("%d ",b[i]);
}
展开全部
楼下有个人回答正确了,我写一个使用数组做的:
#include<stdio.h>
void main(){
int num[3],temp,i,j;
for(i=0;i<3;i++){
printf("请输入第%d个数:",(i+1));
scanf("%d",&num[i]);
}
for(i=0;i<3;i++){
for(j=0;j<2-i;j++){
if(num[j]<num[j+1]){
temp=num[j];
num[j]=num[j+1];
num[j+1]=temp;
}
}
}
for(i=0;i<3;i++){
printf("%d\t",num[i]);
}
printf("\n");
}
#include<stdio.h>
void main(){
int num[3],temp,i,j;
for(i=0;i<3;i++){
printf("请输入第%d个数:",(i+1));
scanf("%d",&num[i]);
}
for(i=0;i<3;i++){
for(j=0;j<2-i;j++){
if(num[j]<num[j+1]){
temp=num[j];
num[j]=num[j+1];
num[j+1]=temp;
}
}
}
for(i=0;i<3;i++){
printf("%d\t",num[i]);
}
printf("\n");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include "stdio.h"
main()
{
int a,b,c,t;
scanf("%d,%d,%d",&a,&b,&c);
if(a<b)
{t=a;a=b;b=t;}
if(a<c)
{t=a;a=c;c=t;}
if(b<c)
{t=b;b=c;c=t;}
printf("%d,%d,%d",a,b,c);
}
main()
{
int a,b,c,t;
scanf("%d,%d,%d",&a,&b,&c);
if(a<b)
{t=a;a=b;b=t;}
if(a<c)
{t=a;a=c;c=t;}
if(b<c)
{t=b;b=c;c=t;}
printf("%d,%d,%d",a,b,c);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
main()
{
float a,b,c,A,B,C;
scanf("%f%f%f",&a,&b,&c);
if(a>b&&a>c&&b>c)
{
A=a;
B=b;
C=c;
}
else if(a>b&a>c&&c>b)
{
A=a;
B=c;
C=b;
}
else if(b>a&&b>c&&a>c)
{
A=b;
B=a;
C=c;
}
else if(b>a&&b>c&&c>a)
{
A=b;
B=c;
C=a;
}
else if(c>a&&c>b&&a>b)
{
A=c;
B=a
C=b;
}
else if(c>a&&c>b&&b>a)
{
A=c;
B=b;
C=a;
}
printf("%f,%f,%f",A,B,C);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询