C语言:用选择法对数组中10个数按由大到小排序

2024-11-02 11:25:16
推荐回答(5个)
回答(1):

#include

using namespace std;

int main()

{

void select_sort(int arry[],int n)

int a[10],i;

for(i=0;i<=9;i++)

{

cin>>a[i];

}

cout<

cout<< select_sort(a,10);    //函数调用,数组名作实参

for(i=0;i<=9;i++)            //输出10个已经排好序的数

{

cout<

}

cout<

return 0;

}

void select_sort(int arry[],int n)   //形参arry是数组名

{

int i,j,k,t;

for(i=0;i<=n-1;i++)

{

k=i;

for(j=i+1;j

{

if(arry[j]

{

k=j;

}

t=arry[k];

arry[k]=arry[i];

arry[i]=t;

}

}

}

运行结果:

扩展资料:

return表示把程序流程从被调函数转向主调函数并把表达式的值带回主调函数,实现函数值的返回,返回时可附带一个返回值,由return后面的参数指定。

return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码),主调函数可以通过返回值判断被调函数的执行情况。

回答(2):

#include 
int main() 
{int n=10,i,j,k,t,a[10];
 for(i=0;i<10;i++)
   scanf("%d",&a[i]);
 for(i=0;i<9;i++)
 {k=i;
  for(j=i+1;j<10;j++)
    if(a[j]>a[k])k=j;
  t=a[i]; a[i]=a[k]; a[k]=t; 
 }  
 for(i=0;i<10;i++)
   printf("%d ",a[i]);
 printf("\n");
 return 0;
}

回答(3):

#include "stdio.h" main() { int a[10]; int i,j,t; printf("输入1-100之间的10个数:"); for(i=0;i<10;i++) scanf("%d",a[i]); for(i=0;i<10;i++) for(j=0;j<10-i;j++) if(a[j]

回答(4):

#include
"stdio.h"
main()
{
int
a[10];

int
i,j,t;

printf("输入1-100之间的10个数:");

for(i=0;i<10;i++)

scanf("%d",a[i]);

for(i=0;i<10;i++)

for(j=0;j<10-i;j++)

if(a[j]
{t=a[j+1];a[j+1]=a[j];a[j]=t;}

for(i=0;i<10;i++)

printf("%d",a[i]);
}

回答(5):

#include
void main()
{
int a[10],i,j,k,t;
printf("please input 10 numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++){
k=i;
for(j=i+1;j<10;j++){
if(a[k]k=j;
}
if(k!=i) 
{
t=a[i];
a[i]=a[k];
a[k]=t;
}
}
printf("The Sorted Numbers is:\n");
for(i=0;i<10;i++)
printf("%-3d",a[i]);
printf("\n");
}