中易网

杭电OJ 1040,我觉得程序没有问题,测试数据也是对的,为什么提交之后WA

答案:1  悬赏:30  
解决时间 2021-04-28 06:37
  • 提问者网友:喜遇你
  • 2021-04-27 09:14
#include<stdio.h>
int main() {
int i,j,n,a,t,sum[100];
scanf("%d",&n);
while(n--) {
scanf("%d",&a);
for(i = 0;i < a;i++) scanf("%d",&sum[i]);
for(j = 0;j < a - 1;j++) {
for(i = j + 1;i < a;i++) {
if(sum[i] < sum[j]) {
t = sum[i];
sum[i] = sum[j];
sum[j] = t;
}
}
}
for(i = 0;i < a;i++) printf("%d ",sum[i]);
printf("\n");
}
}
最佳答案
  • 二级知识专家网友:疯山鬼
  • 2021-04-27 09:20
你数组开小了,要开1000
#include<stdio.h>
#include<stdlib.h>
int cmp(const void*a,const void*b)
{
return *(int*)a-*(int*)b;
}
main()
{
int n,i,t,a,num[1005];
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&num[i]);
qsort(num,n,sizeof(int),cmp);
for(i=0;i<n-1;i++)
printf("%d ",num[i]);
printf("%d\n",num[n-1]);
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息