C++,编写一个判断素数的函数,一定要用c++语言写哦,谢谢了。

编写一个判断素数的函数,函数原型为:int IsPrime(int n),若n为素数,函数的返回值为1,否则返回值为0;要求在主函数中调用该函数,输出100-500之间的全部素数,并计算它们的和。

① 代码:

#include <iostream>

using namespace std;

int isPrime(int n);

int main(int argc, char const *argv[])
{
  int n, i, sum;

  sum = 0;
  for (int i = 100; i <= 500; ++i) {
    if ( isPrime(i) ) 
      sum += i;
  }
  cout << "The sum of all primes between 100 and 500 is " << sum << endl;
    
  return 0;
}

int isPrime(int n)
{
  int i;
  if (n < 2) return 0;
    if (n == 2) return 1;

    for (i = 2; i*i <= n;i++)
        if (n % i == 0)    return 0;

     return 1;
}

② 运行:

The sum of all primes between 100 and 500 is 20476

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-01-11
void prime()
{
int a,b;
int i,n;
int flag=1;
printf("请输入上限:");
scanf("%d",&a);
printf("请输入下限:");
scanf("%d",&b);

printf("%d到%d之间的素数为:",a,b);
for (i=a;i<=b;i++) {
flag=1;
for (n=2;n<i;n++) {
if (i%n==0) {
flag=0;

}
}
if ((flag==1)&&(i!=1)) {
printf("(%d)",i);
}

}

}

怎样用C++判断一个数是素数
只能被1和本身整除的数是素数:include<stdio.h> include<math.h> void main(){ int m,i,k;scanf("%d",&m);k=sqrt(m); \/*只要求到m的算术平方根就可以了,不需要求到m的一半.*\/ for(i=2;i<=k;i++) \/*用for循环简洁一点*\/ if(m%i==0)break;if(i>k)printf("%d is ...

用C++编写一个判断素数的函数程序
return 1;}

用C++编写一个判别素数的函数,在主函数中输入一个整数,通过参数调用...
{ int m;while(1){ printf("请输入数字(输入0退出):");scanf("%d",&m);if (m == 0){ return 0;} if (fun_m(m)){ printf("%d是素数!",m);} else { printf("%d不是素数!",m);} } return 0;} int fun_m(int x){ int n,flag=1;for(n=2;n<x;n++)if(x%n==...

c++判断素数
for(y=2;y<x;y++){ if(x%y==0){ return false;break; \/\/这句是多余的,return就跳出函数了 } return true; \/\/把 这句移到下面这个大括号外面 } \/\/ 移到这里

如何使用c++判断一个数是否为素数
我们首先创建一个头文件,声明判断是否为素数的函数。在项目上右击-New-C\/C++ Header File。声明判断是否为素数的函数,输入为一个整型,输出为0或1。添加一个源文件,用于写函数的具体实现。在项目上右击-New-C\/C++ Source File。首先对小于2的数过滤,它们不需要进行判断,一定不是素数。接下来使用...

c++怎么判断一个数是否为素数?
在c++语言里,判断一个整数m是否是素数,只需把m被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么m就是一个素数 1、思路一,代码:include <stdio.h> int main(){ int a=0; \/\/ 素数的个数 int num=0; \/\/ 输入的整数 printf("输入一个整数:");scanf("%d",&num);for(...

用C语言编写一个程序,设计一个判断素数的函数
include<stdio.h>int IsPrime(int n) \/\/ 判断是否为素数{ if (n <= 1) return 0; if (n % 2 == 0) return n == 2; \/\/ 如果是偶数,只要不是2,其他都是非素数 for (int i = 3; ; i += 2) { if (i > n\/i) break; \/\/ 等价于 i*i > n, 不...

用c++判断一个数是否是素数
首先先定义一个函数用于判断一个数是否是素数,接着主函数接受键盘输入,并调用该函数判断输入的数是否是素数。素数就是只能被1和自身整除的数。故判断n是否是素数,可以用n依次除以n-1,n-2……2,如果能整除则不是素数,否则是素数。参考代码如下:include<stdio.h>#include<iostream>using namespace...

用C++编写一个判断素数合数的程序,要求输入素数时显示出“此数是素 ...
include<iostream.h> bool prime(int n)\/\/判断是否为素数 { int i;bool flag=true;for(i=2;i<=n\/2;i++)if(n%i==0)flag=false;if(flag==true||n==2)return 1;\/\/是的话返回 true return 0;\/\/否则 flase } int fun(int n)\/\/将合数分解,这里用了函数的递归调用 { int i;if(...

用C++语言编写程序:输出0~n的素数?
以下是用 C++ 语言编写程序输出 0~n 的素数的代码:```cpp includeiostream> using namespace std;bool isPrime(int n) { \/\/ 判断是否为素数的函数 if (n <= 1) return false; \/\/ 小于等于1的数字不是素数 for (int i = 2; i * i <= n; i++) { if (n % i == 0) return...

相似回答