运行错误 找不到哪里错了

#include<stdio.h>

#include<math.h>

int sort(int a[10],int n)

{

int i,j,temp=0;

for(i=1;i<=n;i++)

{

j=i-1;

while(j>0)

{

if(a[j]>a[j-1]) break;

if(a[j]<a[j-1])

{

temp=a[j];

a[j]=a[j-1];

a[j-1]=temp;

}

j--;

}

}

}

 

int prime(int u)

{

     int i;

     if (u <= 1) return 0;

     if (u == 2) return 1;

     if (u %2 == 0) return 0;

     for (int i = 3; i <= sqrt(u); i+=2)

         if(u %i == 0) return 0;

     return 1;

}

 

 

 

 

 

int main()

{

int i,n,m;

int a[10];

 

scanf("%d",&n);

for(i=0;i<n;i++)

scanf("%d",&a[i]);

sort (a,n);

for(i=0;i<n;i++)

{

m=a[i];

if(prime(m)==1) printf("%6d",m);

else continue;

}

}

能正常输出啊,有什么问题吗

没什么大问题,排序函数 int sort(int a[10],int n) 对第一个即a[0]略过了,不能参加排序。

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps: 问答会员年卡【8折】购 ,限时加赠IT实体书,即可 享受50次 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m