描述
纯粹素数是这样定义的:一个素数,去掉最高位,剩下的数仍为素数,再去掉剩下的数的最高位,余下的数还是素数。这样下去一直到最后剩下的个位数也还是素数。求出所有小于3000的四位的纯粹素数。
输入描述
无
输出描述
按从小到大的顺序输出若干个纯粹素数,每行一个。
用例输入 1
用例输出 1
来源
函数问题
描述
纯粹素数是这样定义的:一个素数,去掉最高位,剩下的数仍为素数,再去掉剩下的数的最高位,余下的数还是素数。这样下去一直到最后剩下的个位数也还是素数。求出所有小于3000的四位的纯粹素数。
输入描述
无
输出描述
按从小到大的顺序输出若干个纯粹素数,每行一个。
用例输入 1
用例输出 1
来源
函数问题
【相关推荐】
#include <stdio.h>
int pd(int s, int sum) //sum表示次数
{
if (s == 1) return sum;
else if (s > 1 && s % 2 == 0)
{
sum++;
pd(s / 2, sum);
}
else if (s > 1 && s % 2 == 1)
{
sum++;
pd(3 * s + 1, sum);
}
else return -1;
}
int main(void)
{
int a = 0;
printf("输入一个自然数:");
scanf("%d", &a);
printf("至少需经过%d次运算可以得到自然数1\n", pd(a, 0));
return 0;
}