rjps.net
当前位置:首页 >> 求大神!C语言判断一个大于1且小于100000000的整数m。是否为素数。程序怎么写?写菜鸟能看懂的 >>

求大神!C语言判断一个大于1且小于100000000的整数m。是否为素数。程序怎么写?写菜鸟能看懂的

#include<stdio.h>#include<math.h> int main(void) { int n,i,status = 0; printf("请输入一个数字:\n"); scanf("%d",&n); for(i=2;i<(int)sqrt(n);i++) { if(n%i == 0) { status = 1; break; } } if(status == 0) printf("%d是素数\n",n); else printf("%d不是素数\n",n); return 0; }

#include int mian () { int m,i; printf("请输入大于1且小于100000000的整数"); scanf("%d",&m); for(i=2;iif(m%i==0) break; if(iprintf("not prime\n",n); else printf("prime\n",n); return 0; }

你这个f()函数第一次执行for语句i=2 之后就退出了f函数```` 应该改成如下定义:int f(int x) { for(int i=2;i<=(int)sqrt(x);i++) { if(x%i==0) return 0; } return 1; }

#include //判断整数是否为素数 int isPrime(int n) { int i; for(i=2;i<=(int)sqrt(n);i++) //遍历从2~n的平方根向下取整 if(n%i == 0) //如果有i能被n整除,则n不是素数,返回0,否则返回1 return 0; return 1; }//编写测试主函数 int main() { int n; scanf("%

//改好了,试测ok了#include #include void main() { long i,n,k; //整数用long类型do{//用dowhile循环还好点,不要用gotoprintf("请输入一个整数:"); scanf("%ld",&n); k=(long)sqrt(n); //转换成long类型for(i=2;ik)printf("这是一个素数.\n"); else printf("这不是一个素数.\n"); }while(n>=3);//如果输入的数>=3则继续,否则结束}

#include int main(){ int n; int i; scanf ("%d", &n); for (i = 2; i*in)printf ("yes\n"); else printf ("no\n"); return 0;}

#include<stdio.h> main() { int m,i; double s; scanf("%d",&m); for(i=2;i<m;i++) { s=m%i; if(s==0) { printf("%d不是素数",m); break; } } if(i>=m) printf("%d是素数",m); }

目的:判断一个数是否为素数# include <stdio.h> int main(void) { int m; int i; scanf("%d",&m); for(i = 2; i < m; i++) //2到(m-1)的数去除m { if(m% i == 0) // 判断能否整除 break; } if (i == m) printf("YES!\n"); else printf("No!\n"); } for循环的功能

#include void main(){ int i,j,k,min=2,max=100; for(i=min;i i/2+1)/*没有上面的内循环中没有能整除i的j值,则内循环不会中途退出,而会一直循环到不满足循环条件为止,即j>i/2+1,所以这里如果j>i/2+1,就说明i是一个素数*/ printf("%d\n",i); }}

相关文档
网站首页 | 网站地图
All rights reserved Powered by www.rjps.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com