描述
牛牛试图给一个长度为 n 整数数组排序,即实现一个 void sort(int *array,int n)
输入描述:
第一行输入一个正整数 n ,表示数组长度。
第二行输入 n 个正整数,表示数组中每个元素的值
输出描述:
输出排序后的数组
示例
输入:
5
2 9 8 1 3
输出:
1 2 3 8 9
题解
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
void sort(int* array, int n) {
//冒泡排序
for (int i = 0; i < n; i++) {
for (int j = 0; j < n - 1 - i; j++) {
if (array[j] > array[j + 1]) {
int temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
//遍历数组及输出空格
for (int i = 0; i < n; i++) {
printf("%d", array[i]);
if (i != n - 1) {
printf(" ");
}
}
}
int main() {
int n;
scanf("%d", &n);
//动态内存分配
int* array = (int*)malloc(n * sizeof(int));
for (int i = 0; i < n; i++) {
scanf("%d", &array[i]);
}
sort(array, n);
free(array);//释放内存
array = NULL;//避免空悬指针
return 0;
}