用C语言编写一个程序实现从键盘上任意输入50个正整数找出其中的素数并将其按升序排列
#include <stdio.h>
int main() { int nums[50]; int prime[50]; int count = 0;
printf("请输入50个正整数:\n");
for(int i = 0; i < 50; i++)
{
scanf("%d", &nums[i]);
}
printf("素数为:\n");
for(int i = 0; i < 50; i++)
{
int is_prime = 1;
for(int j = 2; j < nums[i]; j++)
{
if(nums[i] % j == 0)
{
is_prime = 0;
break;
}
}
if(is_prime && nums[i] > 1)
{
prime[count] = nums[i];
count++;
}
}
// 冒泡排序
for(int i = 0; i < count - 1; i++)
{
for(int j = 0; j < count - i - 1; j++)
{
if(prime[j] > prime[j+1])
{
int temp = prime[j];
prime[j] = prime[j+1];
prime[j+1] = temp;
}
}
}
// 输出结果
for(int i = 0; i < count; i++)
{
printf("%d ", prime[i]);
}
printf("\n");
return 0;
原文地址: https://www.cveoy.top/t/topic/feJZ 著作权归作者所有。请勿转载和采集!