<pre name="code" class="cpp">/*数列排序*/
#include<stdio.h>
#define SIZE 10 //数组大小
int main()
{
int i,j;
int keyValue[SIZE]={0}; //初始化为0
int max,t;
printf("Please input %d integers:\n",SIZE);
for (i=0;i<SIZE;++i)
{
scanf("%d",&keyValue[i]);//输入数值
}
//使用选择法对数组从大到小排列
for (i=0;i<SIZE-1;++i)
{
max=i;
for(j=i+1;j<SIZE;++j) <span style="font-family: Arial, Helvetica, sans-serif;">//j的初始值为i+1,略过第i个元素</span>
{
if(keyValue[max]<keyValue[j])
max=j;//赋值为更大值
}
/*如果最大值不是本轮循环的第一个值,将它们互换,以保证第一个值最大*/
if (max!=i)
{
t=keyValue[max];
keyValue[max]=keyValue[i];
keyValue[i]=t;
}
}
printf("Print these intergers in ascending:\n");
for (i=0;i<SIZE;++i)
printf("%-5d",keyValue[i]);
printf("\n");
return 0;
}
c语言实例之数列排序
最新推荐文章于 2024-06-25 00:45:36 发布