标签:png i++ name cin out int bsp str ios
描述
现在给你N个数(0<N<1000),现在要求你写出一个程序,找出这N个数中的所有素数,并求和。
输入
第一行给出整数M(0<M<10)代表多少组测试数据
每组测试数据第一行给你N,代表该组测试数据的数量。
接下来的N个数为要测试的数据,每个数小于1000
输出
每组测试数据结果占一行,输出给出的测试数据的所有素数和
#include<iostream>
using namespace std;
int main ()
{
int n;
cin>>n;
int a[n];
int i, j, k = 0;
int flag = 1;
int b[n][10000];
int sum = 0;
for(i = 0; i < n; i++)//输入n个数据 并输入数据
{
cin>>a[i];
for(j = 0; j < a[i]; j++)
cin>>b[i][j];
}
while(k < n)//计算数据中的素数并求和
{
for(i = 0; i < a[k]; i++)
{
j = 2;
if(b[k][i] == 2)
sum += b[k][i];
else if(b[k][i] == 0 || b[k][i] == 1 || b[k][i] == 4)
sum = sum;
else
{
while(j < (b[k][i]+1)/2)//是否为素数
{
if(b[k][i] % j == 0)
{
flag = 0;
break;
}
j++;
}
if(flag)
sum += b[k][i];
flag = 1;
}
}
cout<<sum<<endl;//重置
sum = 0;
k++;
}
}

标签:png i++ name cin out int bsp str ios
原文地址:http://www.cnblogs.com/zsy831143/p/7544931.html