㈠ @C语言大神,我用在线oj测试,有一个数据不能通过,代码求检查
scanf("%d%d%d%d%d",&a[1],&a[2],&a[3],&a[4],&a[5]);
数组名是a[5],最大只能是a[4]
#include<stdio.h>
#include<string.h>
intmain()
{
intn,a[5],i;
chars1[10],s2[10],s5[10],s3[10],s4[10];
scanf("%d",&n);
while(1<=n&&n<=5)
{
if(n==5)
{
("%s",s1);
scanf("%s",s2);
scanf("%s",s3);
scanf("%s",s4);
scanf("%s",s5);
}
if(n==4)
{
scanf("%s",s1);
scanf("%s",s2);
scanf("%s",s3);
scanf("%s",s4);
}
if(n==3)
{
scanf("%s",s1);
scanf("%s",s2);
scanf("%s",s3);
}
if(n==2)
{
scanf("%s",s1);
scanf("%s",s2);
}
if(n==1)
scanf("%s",s1);
break;
}
if(n==5)scanf("%d%d%d%d%d",&a[0],&a[1],&a[2],&a[3],&a[4]);
if(n==4)scanf("%d%d%d%d",&a[0],&a[1],&a[2],&a[3]);
if(n==3)scanf("%d%d%d",&a[0],&a[1],&a[2]);
if(n==2)scanf("%d%d",&a[0],&a[1]);
if(n==1)scanf("%d",&a[0]);
for(i=0;i<n;i++)
{
if(a[i]==0){printf("%s",s1);continue;}
if(a[i]==1){printf("%s",s2);continue;}
if(a[i]==2){printf("%s",s3);continue;}
if(a[i]==3){printf("%s",s4);continue;}
if(a[i]==4){printf("%s",s5);continue;}
}
if(i==n)
{
if(a[i]==0)printf("%s",s1);
if(a[i]==1)printf("%s",s2);
if(a[i]==2)printf("%s",s3);
if(a[i]==3)printf("%s",s4);
if(a[i]==4)printf("%s",s5);
}
printf(" ");
}