回复 10楼 虫眼
我是新人,那个不好意思,吹板是谁啊
2018-02-02 17:42
2018-02-02 22:45
2018-02-02 22:50
2018-02-02 23:02


2018-02-02 23:13
,然后你用的什么编译器啊?我的这里运行只显示10个数就没了。。。。
2018-02-02 23:21
2018-02-02 23:38

2018-02-03 05:47
2018-02-03 05:50
程序代码:#include <stdio.h>
#include <math.h>
int trs(int nold) /*自定义逆向转换函数trs(),如:1234转为4321*/
{
int nnew;
nnew=((nold / 1 %10) * 1000 + (nold / 10 %10) * 100 + (nold / 100 %10) * 10 + (nold / 1000 %10) * 1);
return nnew;
}
main()
{
int i,j,format=0;
int flag1,flag2;
int m,n,num=0;
for(m = 1000; m <= 9999; m++) /*设定检测取值范围*/
{
n = trs(m); /*求出对应的逆向数*/
flag1 = 1, flag2 = 1;
for(i = 2; i <= sqrt(m); i++) /*素数判断*/
if(m%i == 0)
{
flag1 = 0;
break;
}
for(j = 2; j <= sqrt(n); j++) /*逆向数素数判断*/
if(n%j == 0 )
{
flag2 = 0;
break;
}
if(flag1 == 1 && flag2 == 1) /*判断是否为可逆素数*/
{
num++;
printf("(%4d\t" ,m); /*美化显示效果,一行两组加括号*/
printf("%4d)\t" ,n);
format++;
if(format%2 == 0) /*定义列数,这里每行显示2列,如需10列改为format%10==0即可*/
printf("\n");
}
}
printf("\n");
printf("共有逆向素数%d个,%d对!\n",num * 2,num);
return 0;
}
[此贴子已经被作者于2018-2-3 11:01编辑过]
2018-02-03 09:52