[原创]排序任意一列整数(C原代码供大家使用)
*/ --------------------------------------------------------------------------------------*/ 出自: 编程中国 http://www.bc-cn.net
*/ 作者: C爷们 E-mail:kezi1987@126.com QQ:263877792
*/ 时间: 2007-8-5 编程论坛首发
*/ 声明: 尊重作者劳动,转载请保留本段文字
*/ --------------------------------------------------------------------------------------
此程序是使一列整数数由大到小重新排序.
当输入任意个数的一列整数数后,程序会自动检验数列的大小,并以最快的读取速度用起泡法排序.但输入的数据要介于正负32767之间,个数小于200(当大于200时,见程序第三行说明),点击回车输入每个数.下面是这个程序的源代码,欢迎大家对此程序进行改进:
#include<stdio.h>
void main()
{
int a[200],x,n; /*200是未排数的最大个数,可以修改*/
register int i=0,j;
for(printf("lank numbers from big to smell\nafter typed each number,type \"Enter\".by this way,you can enter the number\neach one must be smller than32767 and when you want to end up entering you can press 32767 and then press \"enter\".\nyour numbers:\n");printf("the %d number is ",i+1),scanf("%d",a+i),a[i]!=32767;i++)
n=i+1;
for(i=0;i<=n-2;i++)
for(j=0;j<=n-i-1;j++)
if (a[j-1]<a[j])
{x=a[j];
a[j]=a[j-1];
a[j-1]=x;
}
printf("what you want is ");
printf("\n");
for(i=0;i<=n-1;i++)
printf("the %d=\'%d\' ",i+1,a[i]);
}
[此贴子已经被作者于2007-8-5 14:17:09编辑过]