PTA上的一个题目
题目:运动会上5位同学进行跳绳比赛,需要一个排名程序,先输入每位同学的成绩(跳绳计数),再输出每位同学的成绩及排名(成绩从高到低排列)。
最后运行时报运行超时,超过时间限制400ms
在DEV上运行时是没有问题的,给出的结果也没错,想知道问题出在哪
#include
int main(){
int a[4],b[4],t;
int i,k,max,j;
scanf("%d %d %d %d %d",&a[0],&a[1],&a[2],&a[3],&a[4]);
for(i=0;i<4;i++)//选择排序从高到低
{
max=i;
for(k=i+1;k<5;k++)
{
if(a[max]//t为中间变量
a[i]=a[max];
a[max]=t;
}
j=0;
printf("1 - %d\n",a[j++]);
printf("2 - %d\n",a[j++]);
printf("3 - %d\n",a[j++]);
printf("4 - %d\n",a[j++]);
printf("5 - %d",a[j]);
}
int a[4],b[4],t;
int i,k,max,j;
scanf("%d %d %d %d %d",&a[0],&a[1],&a[2],&a[3],&a[4]);
5个学生信息啊,你数组定义为a[4],你觉得能装下5个人吗?改成 a[5]啊