# include
using namespace std;
int isprime(int a){
if(a==1)
return 2;
for(int i=2;i<=a/2;i++){
if(a%i==0)
return 0;
}
if(i>=(a/2)||i==2)
return 1;
return 0;
}
int main (){
int x;
cout<<"请输入一组数字,按'0'结束:"< while(1){ cin>>x; if(x==0) break; if(isprime(x)==1) cout< } return 0; }
#include
#include
using namespace std;
bool isprime(int a)
{
int i;
for (i=2;i<=sqrt(a);i++)
if (a%i==0)
return 0;
return 1;
}
int main()
{
int n,i;
while (1)
{
cin>>n;
if (n==0)
break;
if (isprime(n))
cout<}
return 0;
}
C++程序:
#include
#include
using namespace std;
#define MAX 100
int isprime(int a)
{
int k = (int)sqrt(a);
int i;
for(i=2; i<=k; i++)
if(a % i == 0)
return 0;
return 1;
}
int main()
{
int arr[MAX];
int i, j, n = 0, c = 0;
int temp;
printf("请输入一系列整数,以0结束:");
while(1)
{
scanf("%d", &temp);
if(temp == 0)
break;
arr[n++] = temp;
}
for(i=0; i{
if(isprime(arr[i]))
c++;
else
arr[i] = 0;
}
if(c < 1) {
return 0;
}
for(i=0; i
printf("%d", arr[i]);
for(j=i+1; j{
if(arr[j] != 0)
printf(" %d", arr[j]);
}
return 0;
}
运行测试: