解题思路:
注意事项:
参考代码:
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n=sc.nextInt();
// 每个符合条件的数字第一位肯定是2,3,5,7
f(2,n);
f(3,n);
f(5,n);
f(7,n);
}
public static void f(long i,int n)
{
if(n==1)//n=1时数字长度为n
{
if(su(i))
System.out.println(i);
}
if(su(i))
{// 除了第一位,后面的几位数肯定是1,3,7,9
f(i*10+1,n-1);
f(i*10+3,n-1);
f(i*10+7,n-1);
f(i*10+9,n-1);
}
}
public static boolean su(long n)// 高效率判断素数
{
for(int i=2;i*i<=n;i++)
{
if(n%i==0)
{return false;}
}
return true;
}
0.0分
2 人评分
字符串的输入输出处理 (C语言代码)浏览:659 |
C语言程序设计教程(第三版)课后习题9.4 (C语言代码)浏览:723 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:485 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:694 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:636 |
简单的a+b (C语言代码)浏览:525 |
C语言程序设计教程(第三版)课后习题6.8 (C++代码)浏览:577 |
printf基础练习2 (C语言代码)浏览:746 |
母牛的故事 (C语言代码)浏览:943 |
Hello, world! (C语言代码)浏览:714 |