#include<stdio.h> #include<iostream> #include<math.h> using namespace std; int is_prime(int n) { if(n<=1) return 0; int m= floor(sqrt(n)+0.5); // 这里加了0.5是为了防止某个n开方后应该是整数,但是可能由于精度原因变成xx.9999 然后截取就错了 for(int i=2;i<=m;i++) //floor是向下取整的意思,和强制转型int()的区别是floor 返回double的类型 { if(n%i==0) return 0; } return 1; } int main() { int n; cin>>n; if(is_prime(n)) { cout<<"Yes\n"<<endl; } else cout<<"No\n"<<endl; return 0; }
c语言基础-判断素数
猜你喜欢
转载自blog.csdn.net/qq_40816078/article/details/80188061
今日推荐
周排行