用冒泡排序怎么写这个代码

img

#include<stdio.h>
int main(){
    int a[100];
    int n;
    int temp;
    printf("需要输入多少数:\n"); 
    scanf("%d",&n);
    printf("请输入%d个数:\n",n); 
    for(int i = 0;i<n;i++){
        scanf("%d",&a[i]);
    } 
    for(int i = 0;i<n;i++){
        for(int j = i+1;j<n;j++){
            if(a[i]<a[j]){
                temp = a[i];
                a[i]=a[j];
                a[j] = temp;
            }
        }
    }

    printf("需要从大到小输出前几位数字:\n");
    scanf("%d",&temp);
    printf("Out put:\n");
    for(int i = 0;i<temp;i++){
        printf("%d  ",a[i]);
    } 
    return 0;
}