一维数组问题,这应该咋弄

从键盘任意输入10个人的成绩,按从大到小的顺序排列。排序后,只要输入名次对应的数字,就能输出该名次对应的成绩是多少。
这应该咋弄啊

定义个数组,然后冒泡排个序。排好序你输入名次,减去1就是对应成绩的下标了啊

#include <stdio.h>
int main()
{
    int a[10],i,j,t;
    for(i=0;i<10;i++)
      scanf("%d",&a[i]);
    for(i=0;i<9;i++)
      for(j=0;j<9-i;j++)
      {
          if(a[j] < a[j+1])
          {
              t = a[j];
              a[j] = a[j+1];
              a[j+1] = t;
          }
      }
    printf("请输入需要查询的名次:");
    scanf("%d",&j);
    printf("第%d名的成绩为:%d",j,a[j+1]);
    return 0;
}