抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

老师平时布置的希冀系统上的作业答案,仅供参考!

【问题描述】

若将某一素数的各位数字的顺序颠倒后得到的数仍是素数,则此素数称为可逆素数。编写一个判断某数是否可逆素数的函数,在主函数中输入一个整数,再调用此函数进行判断

【输入形式】

用户在第一行输入一个整数。

【输出形式】

程序在下一行输出yes或是no,yes表示此数是可逆素数,no表示不是。用户输入的数必须为正整数。注意:yes或是no全是小写输出。

【样例输入】

23

【样例输出】

no

【样例说明】

用户输入23,23各位数字颠倒之后得到32,23是素数,但32不是素数,所以23不是可逆素数。

【参考答案】

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include<stdio.h>
int main()
{
int n,i,r=0;
int num1=0,num2=0;
scanf("%d",&n);
int m;
for(m=2;m<n;m++)
{
if(n%m==0)
break;
}
if (n==m)
num1=1;

for(;n !=0;)
{
i = n %10;
r = r * 10 + i;
n = n /10;
}
int j;
for(j=2;j<r;j++)
{
if(r%j==0)
break;
}
if(r==j)
num2=1;


if(num1==1&&num2==1)
printf("yes");
else
printf("no");
//printf("\n%d",num1); //用于结果检测
//printf("\n%d",num2);
}

评论