C语言/用起泡法(冒泡排序)对n个整数排序并输出从小到大排序后的结果。

C语言/用起泡法(冒泡排序)对n个整数排序并输出从小到大排序后的结果。

问题描述:

题目描述
用起泡法(冒泡排序)对n个整数排序并输出从小到大排序后的结果。

输入描述
第一行包含一个大于0且不超过200的正整数n,表示以下有n个整数需要被排序。
第二行有n个用空格隔开的整数。

输出描述
输出从小到大排序后的结果,每个整数后输出一个空格。
请注意行尾输出换行。

有用请采纳

#include<stdio.h>
void mpSort(int a[], int n);  // 声明函数: a为待排序数组, n为元素个数 


int main(){
    int n;
    scanf("%d", &n);
    int a[n];
    
    for(int i = 0;i < n; i++)
        scanf("%d", &a[i]);
    
    mpSort(a, n);
    
    for(int i = 0; i < n; i++)
        printf("%d ", a[i]);
    
    printf("\n");    
}


void mpSort(int a[], int n){
    int temp;
    for(int i = 0; i < n - 1; i++){
        for (int j = 0; j < n - i - 1; j++){
            if(a[j] > a[j + 1]){
                temp = a[j];
                a[j] = a[j + 1];
                a[j + 1] = temp; 
            }
        }
    }
}