哪位同学能帮我看看pta的问题

img

img


#include<stdio.h>
struct shu{
char mz[40];
float jiage;
}s[20],t;
int main(){
int n;
int i,j;
scanf("%d\n",&n);
for(i=0;i<n;i++)
{gets(s[i].mz);
scanf("%f",&s[i].jiage);
getchar();}
for(i=0;i<n;i++)
{for(j=0;j<n-i;j++)
if(s[j].jiage<s[j+1].jiage)
{
t=s[j];
s[j]=s[j+1];
s[j+1]=t;
}}
printf("%.2f, %s\n",s[0].jiage,s[0].mz);
printf("%.2f, %s",s[n-1].jiage,s[n-1].mz);
}

img

img


同学们能帮我看看哪里错了吗,n最小错了,我找不出来哪错了

试一下把书的价格改为double