1.将三个数按从大到小输出(冒泡法)
程序:
#include <stdio.h>
int main()
{
int i, j, t;
int a[3] = { 0 };
//输入数组
for (i = 0; i <= 2; i++)
{
scanf("%d", &a[i]);
}
for (j = 0; j < 2; j++)
{
for (i = 0; i < 2 - j; i++)
//先比较a1和a2,如果a2大就交换,否则不交换。再比较a2和a3 ,进行交换,,,
//之后还要进行a1和a2的比较,所以有j的循环
{
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;
}
2.将三个数按从大到小输出(基础法)
表达出每一种情况
程序:
int main()
{
int a, b, c;
scanf("%d %d %d",&a,&b,&c);
if (a > b)
{
if (b > c)
{
printf("%d %d %d",a,b,c);
}
else if (c > b)
{
printf("%d %d %d", a, c, b);
}
else
{
printf("%d %d %d", c, a, b);
}
}
else if (a<b)
{
if (a > c)
{
printf("%d %d %d", b, a, c);
}
else if (c > a)
{
printf("%d %d %d", b, c, a );
}
else
{
printf("%d %d %d", c, b , a);
}
}
return 0;
}