|  | 
 
| 
满足下列条件的自然数称为超级素数:该数本身、所有数字之和、所有数字之积以及所有数字 的平方和都是素数。例如113就是一个超级素数。求[100,999]之内:(1)超级素数的个数。(2)所有超级素数之和(3)最大的超级素数。
x
马上注册,结交更多好友,享用更多功能^_^您需要 登录 才可以下载或查看,没有账号?立即注册  输入输出示例
 NUM=3    SUM=555    MAX=311
 
 
   我的代码:(运行的时候runtime)
 #include<stdio.h>
 int main()
 {
 int i,x1=0,x2=1,x3=0 ,num = 0, sum = 0, max = 0,f=0, r = 0, k , j,a,b,c;
 for (i = 100; i <= 999; i++)
 {
 k = i;
 x1 = 0;
 x2 = 0;
 x3 = 0;
 for (; k != 0; k /= 10)
 {
 r = k % 10;
 x1 += r;
 x2 *= r;
 x3 += r*r;
 }
 k = i;
 for (j = 2; j < k; j++)
 {
 if (k%j == 0)
 break;
 }
 if (j == k)
 {
 for (a = 2; a < x1; a++)
 {
 if (x1%a == 0)
 break;
 }
 }
 if (a == x1)
 {
 for (b = 2; b < x2; b++)
 {
 if (x2%b == 0)
 break;
 }
 }
 if (b == x2)
 {
 for (c = 2; c < x3; c++)
 {
 if (x3%c == 0)
 break;
 }
 }
 if (c == x3)
 {
 num++;
 sum += i;
 max = max > i ? max : i;
 }
 
 }
 printf("num=%d,  sum=%d,  max=%d\n", num, sum, max);
 return 0;
 }
 | 
 |