c++设计一个函数,判断一个自然数是否为素数

//判断一个数是否为素数,只要在2---n-1之间找到一个余数为0的即为素数
#include<iostream>
using namespace std;
bool isPrime(long n)
{
    for (int i = 2; i < n - 1; i++)//
    {
        if (n % i == 0)
            return 1;
    }
    return 0;
}
int main()
{
        long n = 16;
        if (isPrime(n) == 1)
        {
            cout << "n是素数" << endl;
        }
        else
        {
            cout << "n不是素数" << endl;
        }
        return 0;
}

新人小白,瞎写着玩。仅供观看,感谢指正,如有侵权,马上删。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,以下是用C语言编写求素数函数的代码: ```c #include <stdio.h> int is_prime(int num) { int i; if(num <= 1) { return 0; } for(i = 2; i <= num/2; i++) { if(num%i == 0) { return 0; } } return 1; } int main() { int num, i; printf("请输入一个正整数:"); scanf("%d", &num); printf("%d以内的素数有:", num); for(i = 2; i <= num; i++) { if(is_prime(i)) { printf("%d ", i); } } printf("\n"); return 0; } ``` 这个函数通过判断输入的正整数是否素数,来找出小于等于输入数的所有素数。其中is_prime()函数用于判断一个是否素数,如果是,返回1;否则,返回0。主函数则是输入要找的素数的上限,并调用is_prime()函数判断每个数是否素数。 ### 回答2: 要用C语言编写一个素数函数,可以按照以下步骤进行: 1. 首先定义一个函数prime_number,该函数用于判断一个是否素数函数的声明可以如下所示:int prime_number(int n); 2. 在函数内部,首先判断n是否小于等于1,若是,则返回0,表示不是素数; 3. 然后,使用一个循环从2到n的平方根的整数部分进行遍历,逐个判断n是否可以被该数整除。如果找到了一个可以整除n的数,则返回0,表示不是素数; 4. 若循环结束后仍未找到能整除n的数,则返回1,表示n是素数。 5. 在主函数main中,可以通过调用prime_number函数判断某个数是否素数。例如,可以输入一个数n,然后调用prime_number函数判断该数是否素数,并根据返回值给出相应的提示信息。 这样,在调用prime_number函数时,若返回值为1,则表示该数是素数,否则表示不是素数。 完整示例代码如下所示: ``` #include <stdio.h> #include <math.h> int prime_number(int n) { if (n <= 1) { return 0; } for (int i = 2; i <= sqrt(n); i++) { if (n % i == 0) { return 0; } } return 1; } int main() { int n; printf("请输入一个整数:"); scanf("%d", &n); if (prime_number(n)) { printf("%d是素数\n", n); } else { printf("%d不是素数\n", n); } return 0; } ``` 这样,通过调用prime_number函数,可以判断输入的数n是否素数。 ### 回答3: 首先,素数是指只能被1和它本身整除的自然数。我们可以用C语言编写一个函数判断一个是否素数。 以下是一个用C语言实现的求素数函数: ```c #include <stdio.h> int isPrime(int num) { if (num <= 1) { return 0; // 小于等于1的数不是素数 } for (int i = 2; i * i <= num; i++) { if (num % i == 0) { return 0; // 如果能被整除,则不是素数 } } return 1; // 是素数 } int main() { int n; printf("请输入一个正整数: "); scanf("%d", &n); if (isPrime(n)) { printf("%d是素数\n", n); } else { printf("%d不是素数\n", n); } return 0; } ``` 在上面的代码中,我们定义了一个名为`isPrime`的函数,该函数用于判断一个数`num`是否素数。我们首先判断`num`是否小于等于1,因为小于等于1的数不是素数,所以直接返回0。然后,我们使用一个`for`循环,从2开始迭代到`num`的平方根位置,判断`num`是否能被`i`整除。如果存在可以整除的因子,则返回0,否则返回1。最后,在`main`函数中,我们通过用户输入一个正整数,并调用`isPrime`函数判断是否素数,然后输出结果。 希望以上代码能够帮助你理解如何用C语言编写一个素数函数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值