编写程序,实现一维数组排序。对一维数组按照从小到大的顺序排序。程序定义函数sort()来实现数组a的排序。函数原型如下:
void sort(int a[], int n);
数组元素的输出调用PrintArr()。
输入要求:第一行输入一个整数n(1<=n<=10),表示数组有n个整数;第二行输入n个整数。输出要求:输出占一行。对这n个整数数按照从小到大的顺序输出,数据之间用一个空格隔开。
输入样例:
6
6 5 1 2 3 4
考察函数,数组和循环结构语句的使用。输出样例:
1 2 3 4 5 6
#include<stdio.h>void sort(int a[],int n){int temp,i,j;for(i=0;i<n-1;i++)//i<n-1是因为数组的最后一位已经在之前的运算中接受了排序。{for(j=i+1;j<n;j++){if(a[i]>a[j]){temp=a[i];a[i]=a[j];a[j]=temp;}//注意if的规范书写(加{}),不规范可能出错。}}}void PrintArr(int a[], int n){int i;for(i=0;i<n;i++)printf("%d ",a[i]);}int main(void){int len,a[100],i;scanf("%d",&len);for(i=0;i<len;i++){scanf("%d",&a[i]);}sort(a,len);PrintArr(a,len);return 0;}