C语言:在键盘上任意输入50个正整数,找出其中的素数,并将其按升序排列

如题所述

void main()
{
int i,j,k=0,a,s[50];
for(i=0;i<50;i++)
{
scanf("%d",&a);
//小于等于1的数不算素数
if(a<=1)
continue;
//判断是否是素数
for(j=2;j<a/2;j++)
{
if(a%j==0)
{
break;
}
else
{
continue;
}
}
if(j>=a/2)
{
s[k++]=a;
}
}
//排序
for(i=0;i<k;i++)
{
for(j=i+1;j<k;j++)
{
if(s[i]>s[j])
{
a=s[i];
s[i]=s[j];
s[j]=a;
}
}

}
//输出
for(i=0;i<k;i++)
{
printf("%d ",s[i]);
}
}
温馨提示:答案为网友推荐,仅供参考