排序c语言,保存数组

从键盘任意输入某班30个学生的成绩(成绩类型为整型),保存到数组中,并输出成绩按由高到低的排序结果。
输入:"%d" 提示信息"Please enter scores:\n"
输出:提示信息"Sorted results:\n",且每个成绩占一行"%d\n”

#include <stdio.h>
int main()
{
    int s[30],i,j,t;
    printf("Please enter scores:\n");
    for(i=0;i<30;i++)
        scanf("%d",&a[i]);
    for(i=0;i<29;i++)
        for(j=0;j<29-i;j++)
        {
            if(s[j] < s[j+1])
            {
                t = s[j];
                s[j] = s[j+1];
                s[j+1] = t;
            }
        }
    printf("Sorted results:\n");
    for(i=0;i<30;i++)
        printf("%d\n",a[i]);
    return 0;
}


#include<stdio.h>
void sort(int a[]);
 
int main()
{
    int a[30];
    printf("Please enter scores:\n");
    for (int i = 0; i <= 29; i++)
    {
        scanf("%d", &a[i]);
    }
    sort(a);
    printf("Sorted results:\n");
    for (int j = 0; j <= 29; j++)
    {
        printf("%d\n", a[j]);
    }
    return 0;
}
void sort(int a[])
{
    int temp;
    for (int i = 0; i < 29; i++)
    {
        for (int j = 0; j <= 29; j++)
        {
            if (a[i] >a[j])
            {
                temp = a[j];
                a[j] = a[i];
                a[i] = temp;
            }
        }
    }
}