nyoj题目22:素数求和问题

来源:互联网 发布:淘宝如何补动态评分 编辑:程序博客网 时间:2024/06/02 03:27

素数求和问题

时间限制:3000 ms  |  内存限制:65535 KB
难度:2
描述
现在给你N个数(0<N<1000),现在要求你写出一个程序,找出这N个数中的所有素数,并求和。
输入
第一行给出整数M(0<M<10)代表多少组测试数据
每组测试数据第一行给你N,代表该组测试数据的数量。
接下来的N个数为要测试的数据,每个数小于1000
输出
每组测试数据结果占一行,输出给出的测试数据的所有素数和
样例输入
351 2 3 4 5811 12 13 14 15 16 17 181021 22 23 24 25 26 27 28 29 30
样例输出
104152

 
#include <stdio.h>

int main ()
{
 int n, m;
 int a, j, k, sum;
 scanf ("%d", &n);    
 while (n--)
 {
  scanf ("%d", &m);
  sum = 0;
  while (m--)
  {
   k = 0;
   scanf("%d", &a);
   if (a == 1)                       //对数进行判断,下头的循环没办法判断是否是1.所以要先排除
   continue;

   for(j = 2;j < a; j++)
   {
        if (a % j == 0)
        {
         k = 1;
         break;
        }
   }
   if (k == 0)
   sum = sum + a;
  }
  printf ("%d\n", sum);
 }
 return 0;
}       

这道题自己很早之前做的,现在看起来没有难度。


0 0
原创粉丝点击