将45,65,76,87,85,96,85,43,67,69 以数组的形式输入,然后利用选择排序法从小到大排序和冒泡排序法从大到小排序。
以下是代码:
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
//选择排序法
int score[10] = { 45,65,76,87,85,96,85,43,67,69 };
int min = 0;
for (int i = 0; i < 10; i++)
{
min = i;
for (int j = i + 1; j < 10; j++)
{
if (score[min] > score[j])
{
min= j;
}
}
int temp = score[i];
score[i] = score[min];
score[min] = temp;
}
for (int i = 0; i < 10; i++)
{
printf("%d\t", score[i]);
}
printf("\n");
//冒泡排序:相邻元素相比较不满足排序准则就交换(减少排序次数)
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 9; j++)
{
if (score[j] < score[j + 1])
{
int temp = score[j];
score[j] = score[j + 1];
score[j + 1] = temp;
}
}
}
for (int i = 0; i < 10; i++)
{
printf("%d\t", score[i]);
}
printf("\n");
return 0;
system("pause");
}
输出结果:
以上就是用C语言写的数组的选择排序法和冒泡排序法希望可以对你有所帮助。
有何疑问可以私信我。