输入一个数 n再输入 n 个整数存入数组 a 中,用选择法将 a 中的元素按升序排列,输出排序后数组元素。

要求定义并调用函数 sort(a,n),它的功能是采用选择排序算法,将数组 a 的前 n 个元素按从小到大的顺序排序,函数形参 a 的类型是整型指针,形参n的类型是int,函数的类型是void。

1、首先,我们声明一个一维数组。

2、然后我们输入【Array.Sort(a);】。

3、在接下来我们编写一段遍历代码。

4、最后我们输入屏幕等待语句。

5、然后我们便可以点击启动调试按钮。

6、这时便可以成功输出排序后数组元素。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-07-03

#include <stdio.h>

#define MAXN 10

void sort( int a[], int n );

int main()

{

int i, n;

int a[MAXN];

scanf("%d", &n);

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

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

sort(a, n);

printf("After sorted the array is:");

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

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

printf("\n");

return 0;

}

运行效果:

扩展资料:

scanf()用法:int scanf(char*format,[argument,...]);

scanf()函数是通用终端格式化输入函数,它从标准输入设备(键盘)读取输入的信息。可以读入任何固有类型的数据并自动把数值变换成适当的机内格式。

其调用格式为:scanf(“&lt;格式化字符串&gt;”,&lt;地址表&gt;);

scanf()函数返回成功赋值的数据项数,出错时则返回EOF;

其控制串由三类字符构成:

1、格式化说明符

2、空白符

3、非空白符

格式化说明符

附加格式说明字符表:

空白字符

空白字符会使scanf()函数在读操作中略去输入中的一个或多个空白字符,空白符可以是space,tab,newline等等,直到第一个非空白符出现为止。

非空白字符

一个非空白字符会使scanf()函数在读入时剔除掉与这个非空白字符相同的字符。

本回答被网友采纳
第2个回答  2016-05-23
# include<stdio.h>
# define N 100
void sort(int *a,int n)
{
int i,j,t,m;
for (i = 0; i < n - 1; i++){
m = i;
for (j = i + 1; j < n; j++)
if ( *(a+j)<*(a+m) )
m = j;
if(i!=m)
{
t=*(a+i);
*(a+i)=*(a+m);
*(a+m)=t;
}
}
}
void main()
{
int i,n,a[N];
printf("请输入数组个数n:");
scanf("%d",&n);
printf("请输入%d个元素:",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
sort(a,n);
for(i=0;i<n;i++)
printf("%-7d",a[i]);
}本回答被网友采纳