c语言查找超级素数的函数 超级素数c++程序

C语言求超级素数给你个完整的:
#includestdio.h
int isprim(int n)
{
int i;
if (n2) return 0;
for (i=2; i*i=n;i)
if (n%i==0) return 0;
return 1;
}
int isssp(int n)
{
if (!isprim(n)) return 0;
while (n/10)
if (!isprim(n/=10)) return 0;
return 1;
}
int main()
{
int i;
int cnt=0;
int maxp;
printf("从100-9999的超级素数有:\n");
for (i=100; i10000;i)
{
if (isssp(i))
{
cnt;
maxp=i;
printf("?, i);
if (cnt%5==0)
printf("\n");
}
}
printf("\n总共有:%d个\n", cnt);
printf("最大的是:%d\n", maxp);
return 0;
}
C语言编程:寻找四位数的超级素数 。Cc语言查找超级素数的函数:
#includeiostream
#includecmath
using namespace std;
bool isprime(int num)
{
int i;
for(i=2;isqrt(num);i)
{
if(num%i==0)
return false;
}
return true;
}
void main()
{
int i;
for(i=1000;i10000;i)
{
int m=i;
if(isprime(m))//4位数是否为素数
{
m/=10;
if((m!=0)(isprime(m)))//3位数是否为素数
{
m/=10;
if((m!=0)(isprime(m)))//2位数是否为素数
{
m/=10;
if((m!=0)(isprime(m)))//1位数是否为素数
{
couti' ';
}
}
}
}
}
coutendl;
}
C语言编程怎样找超级素数?一个素数c语言查找超级素数的函数,依次从最高位去掉一位c语言查找超级素数的函数 , 两位……若得到c语言查找超级素数的函数的都是素数c语言查找超级素数的函数 , 且各数字不为0c语言查找超级素数的函数,则称为超级素数 。/*TC2.0调试*/#include "stdio.h"#include "math.h"int prime(int i){/*判断是否为素数*/int j;if(i==1) return 0;for(j=2;j=sqrt(i);j)if(i%j==0) return 0;return 1;}int IsSuperPrime(int i){/*判断此数是否为超级素数函数*/int j;if(prime(i)==1){do{i=i/10;if(prime(i)==0) return 0;}while(i=10);return 1;}else return 0;}void main()/*求100~9999之间所有的超级素数个数,和,及最大值*/{int i,spn=0,spm;long sps=0;for(i=101;i=9997;i =2)if(IsSuperPrime(i)==1){sps =i;spn;spm=i;}printf("sum=%ld,Total=%d,Max=%d",sps,spn,spm);getch();}
记得采纳啊
C语言用函数调用求四位数的超级素数VC6.0下调试可用
/*
一个素数,依次从最高位去掉一位 , 两位……若得到的都是素数,且各数字不为0,则称为超级素数 。
*/
#include "stdio.h"
#include "math.h"
int prime(int i)
{/*判断是否为素数*/
int j;
if(i==1) return 0;
for(j=2;j=sqrt(i);j)
if(i%j==0) return 0;
return 1;
}
int IsSuperPrime(int i)
{/*判断此数是否为超级素数函数*/
if(prime(i)==1)
{
do{
i=i/10;
if(prime(i)==0) return 0;
}while(i=10);
return 1;
}
return 0;
}
void main()
{
int spn=0,num;
long sps=0;//所有4位数的超级素数的总和
for (num=1000;num10000;num)
if(IsSuperPrime(num))
{
printf("m",num);
if(spn%4==0)printf("\n");//每输出4个超级素数输出一个换行
sps =num;
}
printf("\nsum=%ld,Total=%d\n",sps,spn);
}
c语言求出超级素数在这个程序中c语言查找超级素数的函数你到底想干什么c语言查找超级素数的函数?编程序时要想想你到底要干什么,是怎么处理数据c语言查找超级素数的函数的 。
第一个是判断素数函数错啦,应为c语言查找超级素数的函数:
int panduansushu(int x)
{
int i,j;
j=(int)sqrt(x);
for(i=2;i=j;i)
{
if(x%i==0)
{
return 0;
}
}
return 1;
}
自己理解下,是除以所有小与等于它开更c语言查找超级素数的函数的数都除不尽才是素数 。
主函数不用你那么复杂,并且还是错的 。
void main()
{
int x=1000,a,y;
for(x=1000;x=9999;x)
{
if(panduansushu(x)==1) printf("%d\n",x);
}
}
这样就可以输出1000到9999的素数啦
c语言求超级素数逻辑乱得有点厉害,如
for(n=2;nm;n)
if(m%n==0)
break;
这里的break;只结束for(n=2;...这个循环,还在前一个for(k=0;k3;k)循环中;可是break;就意味着m已经不是素数了,那么整个m所在的3位数就不是超级素数,还有什么必要继续做for(k=0;k3;k)这个循环?这种题比较好的结构是弄一个素数判断函数 , 不断用原数和它不断除以10的数调用,都返回“真”的就是超级素数,否则不是 。代码如下——
#include "stdio.h"
int prime(int n){//素数
int i;
if(n2!(n1) || n2)
return 0;
for(i=3;i*i=n;i =2)
if(!(n%i))
return 0;
return 1;
}
int main(int argc,char *argv[]){
int i,j,k;
for(k=0,i=101;i=9999;i =2){
for(j=i;j0;j/=10)
if(!prime(j))
break;
if(!j)
printf(k ? "]" : "]\n",i);
}
if(k)
printf("\n");
return 0;
}
运行结果:
【c语言查找超级素数的函数 超级素数c 程序】c语言查找超级素数的函数的介绍就聊到这里吧,感谢你花时间阅读本站内容 , 更多关于超级素数c程序、c语言查找超级素数的函数的信息别忘了在本站进行查找喔 。

    推荐阅读