数字排⼤⼩C语⾔怎么编写,C语⾔排列数字⼤⼩优质回答 回答者:Paksun
排序数组可以使⽤冒泡算法:如果前⼀个数据⽐后⼀个⼤,则交换。#include
//使⽤冒泡算法升序数组src
voidsort(int*src,intlen)
{
inttem;
for(inti=0;i
{
for(intj=0;j
if(src[j]>src[j+1])//如果前⼀个数据⽐后⼀个⼤,则交换
{
tem=src[j];
src[j]=src[j+1];
src[j+1]=tem;
}
}
}
intmain()
{
inta[10]={2,5,9,6,4,7,8,1,0,3};
sort(a,10);//排序
for(inti=0;i<10;i++)//输出结果
printf("%d",a[i]);
return0;
}
-----------------------------------------------------------------
回答者:⼭顶的观望者
main ( )
{ int a[5];
int i,j,t;
printf (“input 4 unmbers:\n”);
for(i=1;i<5;i++)
scanf (“%d ” ,&a[i]);
for(j=1; j<=3; j++)
for ( i=j+1; i<=4; i++)
if (a[i]>a[j])
{t=a[i];a[i]=a[j];a[j]=t;}
printf( “the sorted numbers:\n”);
for( i=1;i<5;i++)
printf(“%d”,a[i]);
c语⾔中常常数组的第⼀个元素a[0]不⽤,为了和实际情况符合,⼀般我们数数都是从第⼀个开始,并⾮是第0个;-----------------------------------------------------------------
c语言的冒泡排序算法回答者:leo李昊
main ( )
{ int a[5];
int i,j,t;
printf (“input 4 unmbers:\n”);
for(i=1;i<11;i++)
scanf (“%d ” ,&a[i]);
printf (“\n”);
for(j=1; j<=4; j++)
for ( i=j; i<=4-j; i++)
if (a[i]>a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
printf( “the sorted numbers:\n”);
for( i=1;i<5;i++)
printf(“%d”,a[i]);
}
-----------------------------------------------------------------
回答者:BJW
此问题是典型的排序问题,有好多解决办法,其中⼀种是冒泡排序法。
具体思路是:
在⽔中,⽓泡密度⼩,故要上浮。在此题中,把最⼩的数⽐作是⽓泡,在排序过程中要“上浮”。具体请参见参考资料中的⽅法,有各种语⾔实现的。
建议:学习⼀下数据结构。
TAGS: 数字排列
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论