判断一个数是否为素数(c语言)

合集下载

判断素数的C语言程序.docx

判断素数的C语言程序.docx

判断素数的C语言程序.docx素数是指只能被1和本身整除的整数,例如2、3、5、7、11等都是素数。

在编程中,判断一个数是否为素数是一个常见的问题。

下面我们来介绍一下如何用C语言来编写一个判断素数的程序。

判断方法判断一个数n是否为素数,可以采用以下方法:1. 如果n小于2,则n不是素数,直接返回false。

4. 如果n大于2,且为奇数,则从3到sqrt(n)依次判断n是否能被整除,如果可以则n不是素数,直接返回false,如果循环结束后n还未被整除,则n是素数,返回true。

根据上面的方法,我们就可以开始编写判断素数的C语言程序了。

代码实现```c#include <stdio.h>#include <math.h>bool is_prime(int n){if(n < 2){ //1.如果n小于2,则n不是素数,直接返回false。

return false;}if(n == 2){ //2.如果n等于2,则n是素数,直接返回true。

return true;}if(n % 2 == 0){ //3.如果n大于2,且为偶数,则n不是素数,直接返回false。

return false;}int limit = sqrt(n); //计算sqrt(n)for(int i = 3; i <= limit; i += 2){ //从3开始循环到sqrt(n)if(n % i == 0){ //如果n能够被i整除,则n不是素数,直接返回false。

return false;}}return true; //循环结束后n还未被整除,则n是素数,返回true。

}代码解析代码中首先包含了两个头文件,分别是stdio.h和math.h。

其中stdio.h是C语言标准输入输出头文件,math.h是C语言标准数学头文件,用于包含sqrt函数,可以用来计算平方根,即sqrt(n)。

接下来是一个is_prime函数,该函数传入一个n参数,用于判断n是否为素数。

判断一个数是否为素数(c语言)

判断一个数是否为素数(c语言)

在C语言中,我们经常会用到判断一个数的性质,今天就以如何判断一个数是否为素数为例来说明思路,希望能够达到触类旁通的效果。

1.直接判断一个数是否为素数,代码如下:/*目的:判断一个数是否是素数*/# include <stdio.h>int main(void){int val;int i;scanf("%d",&val);for(i = 2; i < val; i++) // 用2到(val-1)的数去除val{if(val % i == 0) // 判断能否整除break;}if (i == val)printf("YES!\n");elseprintf("No!\n");}注:for循环的功能:①若能整除,通过break跳出函数②若一直到val-1都不能整除,此时i再自增1到val,不满足i < val 跳出for循环,这时i = val。

2.通过函数来判断/*目的:通过函数判断一个数是否是素数*/# include <stdio.h>bool f(int m){int i;for(i = 2;i < m; i++){if(m % i == 0)break;}if(i == m)return true;elsereturn false;}int main(void){int val;scanf("%d",&val);if (f(val)) //注:此处若写成:if (f(val) == true) 也可以。

printf("YES\n");elseprintf("NO\n");}对比上述两种方法可见,通过函数来实现比较合适,因为如果要判断的数据过多时,要通过第一种方法实现的话,代码太多,而且也不便于调用,因此推荐使用函数实现此功能。

C语言素数的几种判断方法精编版

C语言素数的几种判断方法精编版

C语言素数的几种判断方法精编版
我们要判断素数,首先要知道素数的定义。

素数:质数又称素数。

一个大于1的自然数,除了1和它
自身外,不能被其他自然数整除的数叫做质数;否则称为
合数。

知道了素数的定义,那么我们应该想一下,如何去判断一个数是否为素数?
一种思路是,我们在每次得到一个数后,都去计算,去尝
试因式分解它,看它除了1和自身之外还有没有其他因子
另一种是,我们去查阅素数表,看这个数在不在素数表上。

那我们就要先得到素数表。

以下除了第一种方法,第2~4种方法都是用第二种思路做的当要判断的目标数很少时,第一种高效。

但是当给定的目标数组很多,数也很大时。

后面的思路配上高效的查找算法,显然更高效
方法:暴力求解
1-1:稍微动动脑
思想:根据素数的定义思考。

素数是大于1的自然数,除了1和自身外,其他数都不是它的因子。

那我们就可以用一个循环,从2开始遍历到这个数减去1,如果这个数都不能被整除,那么这个数就是素
数。

也就是说:给定一个数 n , i 从 2 开始取值,直到 n - 1(取整数),如果 n % i != 0 , n 就是素数进一步思考,有必要遍历到 n - 1 吗?除了1以外,任何合数最小的因子就是2,那最大的因子就是 n/2 那我们就遍历到 n/2就足够了。

c语言递归求素数

c语言递归求素数

c语言递归求素数在计算机编程中,递归是一种重要的编程技巧,它可以在函数体内调用自身来解决问题。

本文将为大家介绍如何使用C语言中的递归算法来判断一个数是否为素数。

什么是素数呢?素数又称质数,是指除了1和它本身之外没有其他约数的自然数。

比如2、3、5、7等都是素数。

判断一个数是否为素数通常有多种方法,其中一个比较简单和常用的方法就是试除法。

我们可以使用递归算法来实现试除法判断一个数是否为素数。

首先,我们需要一个辅助函数来判断一个数n是否能被另一个数i整除,如果能整除,则说明n不是素数;如果不能整除,则说明n可能是素数。

下面是一个示例代码:```cinclude <stdio.h>int isPrime(int n, int i) {if (i == 1) {return 1;}if (n % i == 0) {return 0;}return isPrime(n, i - 1);}int main() {int n;printf("请输入一个自然数:"); scanf("%d", &n);if (isPrime(n, n - 1)) {printf("%d是素数\n", n); } else {printf("%d不是素数\n", n); }return 0;}```以上代码中,`isPrime`函数接收两个参数,分别是要判断的数n和当前的除数i。

函数首先判断是否已经试除到1,如果是则返回1,表示n是素数。

如果n能被i整除,则返回0,表示n不是素数。

否则,递归地调用`isPrime`函数,将i减1,继续试除。

在主函数中,我们首先接收一个自然数n,并调用`isPrime`函数进行判断。

如果返回值为1,则说明n是素数,否则不是素数。

通过这个简单的递归算法,我们可以判断一个数是否为素数。

当然,递归算法也有一些缺点,在处理大数时可能会导致栈溢出,所以在实际应用中,我们可能需要使用其他更高效的算法来判断素数。

大一c语言经典编程题

大一c语言经典编程题

大一c语言经典编程题
在大一学习C语言时,经典的编程题有很多,下面我将为你列
举几个常见的题目,并从不同角度给出解答。

1. 计算两个整数的和与积。

题目描述,编写一个程序,要求用户输入两个整数,然后计算
并输出它们的和与积。

解答,可以使用scanf函数接收用户输入的两个整数,然后使
用加法和乘法运算符计算和与积,最后使用printf函数输出结果。

2. 判断一个数是否为素数。

题目描述,编写一个程序,判断用户输入的一个正整数是否为
素数。

解答,可以使用循环从2开始逐个除以该数的所有可能因子,
如果存在能整除该数的因子,则该数不是素数;否则,该数是素数。

3. 求解斐波那契数列。

题目描述,编写一个程序,输出斐波那契数列的前n项。

解答,可以使用循环或递归的方式实现斐波那契数列的求解。

循环方式通过迭代计算当前项和前两项的和,递归方式则通过定义函数自身来求解。

4. 字符串反转。

题目描述,编写一个程序,将用户输入的字符串进行反转。

解答,可以使用循环遍历字符串,将字符从后往前逐个取出,并放入一个新的字符串中,最后输出新的字符串即可实现字符串反转。

5. 数组排序。

题目描述,编写一个程序,对一个整型数组进行升序排序。

解答,可以使用冒泡排序、选择排序、插入排序等常见的排序算法来对整型数组进行升序排序,具体实现方式可以根据具体算法
进行编写。

以上只是一些大一阶段常见的C语言编程题,还有很多其他的经典题目,可以通过参考相关的编程教材或网上资源来获取更多题目和解答。

希望以上回答能够帮助到你。

c语言判断素数的函数程序,调用函数

c语言判断素数的函数程序,调用函数

C语言是一种广泛应用于系统编程和应用程序开发的高级程序设计语言。

在C语言中,有许多常用的函数和技巧,其中包括判断素数的函数程序。

在本文中,我们将介绍如何在C语言中编写一个判断素数的函数,并且调用这个函数进行素数的判断。

一、判断素数的函数程序在C语言中,我们可以通过编写一个函数来判断一个数是否为素数。

素数是指只能被1和自身整除的数,因此我们可以通过对一个数进行从2到该数-1的遍历,来查看该数是否能够被其他数整除。

如果能被整除,则该数不是素数;如果不能被整除,则该数是素数。

下面是一个简单的判断素数的函数程序示例:```#include <stdio.h>int isPrime(int num) {if (num <= 1) {return 0;}for (int i = 2; i < num; i++) {if (num i == 0) {return 0;}}return 1;}int main() {int num;printf("请输入一个整数:");scanf("d", num);if (isPrime(num)) {printf("d是素数\n", num);} else {printf("d不是素数\n", num);}return 0;}```在上面的代码中,我们首先定义了一个判断素数的函数isPrime,这个函数接受一个整数参数num,并返回一个整数值。

在主函数main中,我们输入一个整数,然后调用isPrime函数进行素数的判断,并输出结果。

二、调用函数进行素数判断通过上面的函数程序,我们可以很方便地调用isPrime函数对用户输入的数进行素数的判断。

在C语言中,我们可以使用scanf函数来接受用户输入的整数,然后调用isPrime函数进行素数的判断,并输出结果。

下面是一个完整的调用函数进行素数判断的例子:```#include <stdio.h>int isPrime(int num) {if (num <= 1) {return 0;}for (int i = 2; i < num; i++) {if (num i == 0) {return 0;}}return 1;int main() {int num;printf("请输入一个整数:");scanf("d", num);if (isPrime(num)) {printf("d是素数\n", num);} else {printf("d不是素数\n", num);}return 0;}```在上面的代码中,我们定义了一个判断素数的函数isPrime,并在主函数main中接受用户输入的数,然后调用isPrime函数进行素数的判断,并输出结果。

c语言中prime 的用法

c语言中prime 的用法

c语言中prime 的用法C语言中prime的用法在C语言中,prime(素数)是一个常见的概念,用于描述只能被1和自身整除的正整数。

在编程中,我们经常需要判断一个给定的数是否为素数,以及找到一定范围内的所有素数。

要判断一个数是否为素数,可以使用以下方法:1. 定义一个变量isPrime并初始化为1(表示是素数)。

2. 使用一个循环遍历2到该数的平方根(因为一个数的因子不可能超过其平方根)。

循环的条件是i从2开始递增,且isPrime为1。

3. 在循环中,如果该数能被i整除,则将isPrime设置为0,并跳出循环。

4. 最后,判断isPrime的值,如果为1,则说明该数是素数,否则不是素数。

以下是一个判断素数的示例代码:```c#include <stdio.h>#include <math.h>int isPrimeNumber(int num) {int isPrime = 1;for (int i = 2; i <= sqrt(num); i++) {if (num % i == 0) {isPrime = 0;break;}}return isPrime;}int main() {int num;printf("请输入一个正整数: ");scanf("%d", &num);if (isPrimeNumber(num)) {printf("%d是素数。

\n", num);} else {printf("%d不是素数。

\n", num);}return 0;}```通过上述代码,我们可以判断用户输入的数是否为素数。

另外,如果我们想找到一定范围内的所有素数,可以使用以下方法:1. 定义一个函数isPrimeNumber,用于判断一个数是否为素数,参考上述代码。

2. 定义一个循环从2开始遍历到指定范围内的最大值。

素数c语言程序编写

素数c语言程序编写

素数c语言程序编写素数是指只能被1和自身整除的正整数,如2、3、5、7等。

在计算机编程中,判断一个数是否为素数是一个常见的问题。

下面我们来介绍一下如何用C语言编写素数程序。

首先,我们需要明确一个概念:质数。

质数是指除了1和本身之外,不能被其他正整数整除的正整数。

因此,素数和质数是同义词。

接下来,我们来看一下如何用C语言编写素数程序。

下面是一个简单的示例代码:```#include <stdio.h>int main(){int n, i, flag = 0;printf("Enter a positive integer: ");scanf("%d", &n);for(i=2; i<=n/2; ++i){if(n%i == 0){flag = 1;break;}}if (n == 1){printf("1 is not a prime number.\n");}else{if (flag == 0)printf("%d is a prime number.\n", n);elseprintf("%d is not a prime number.\n", n); }return 0;}```这个程序的作用是判断输入的正整数是否为素数。

程序首先要求用户输入一个正整数,然后通过for循环从2开始到n/2进行遍历,判断n是否能被i整除。

如果能被整除,则说明n不是素数,将flag标记为1,跳出循环。

最后根据flag的值输出结果。

需要注意的是,1不是素数,因此需要特殊处理。

如果输入的是1,则直接输出“1 is not a prime number.”。

此外,还有一些优化的方法可以提高程序的效率。

比如,可以只遍历到sqrt(n)即可,因为如果n能被大于sqrt(n)的数整除,那么一定能被小于sqrt(n)的数整除。

c语言编写程序判断素数while

c语言编写程序判断素数while

什么是素数?素数指的是只能被1和自身整除的自然数,也就是说除了1和它本身之外,不能被其他自然数整除的数。

比如2、3、5、7等就是素数,因为它们只能被1和自身整除,而4、6、8等就不是素数,因为它们还可以被其他自然数整除。

为什么要用C语言编写程序来判断素数?C语言是一种强大的编程语言,它能够很好地帮助我们实现各种功能。

用C语言编写程序来判断素数,不仅可以加深对C语言的理解,还可以提高对素数的认识,并且可以应用到实际生活中,帮助我们解决一些实际问题。

如何使用C语言编写程序来判断素数?下面我将介绍一种使用C语言编写程序来判断素数的方法。

我们需要使用C语言中的while循环来进行判断。

具体步骤如下:1. 我们需要定义一个函数来判断一个数是否为素数。

我们可以将这个函数命名为isPrime,函数的参数为一个整数n,表示要判断的数。

2. 在isPrime函数中,我们可以使用while循环来进行判断。

我们可以设定一个变量i,初始值为2,然后每次循环时i增加1,直到i大于n为止。

在每次循环中,我们可以使用if语句来判断n能否被i整除,如果能被整除,则说明n不是素数,可以结束程序;如果不能被整除,则继续循环,直到i大于n为止。

3. 如果循环结束后,都没有找到能整除n的数,那么说明n是素数,可以输出“n是素数”的提示信息。

具体代码如下:```#include <stdio.h>int isPrime(int n) {int i = 2;while (i < n) {if (n i == 0) {return 0; // 不是素数}i++;}return 1; // 是素数}int m本人n() {int num;printf("请输入一个整数:");scanf("d", num);if (isPrime(num)) {printf("d是素数\n", num);} else {printf("d不是素数\n", num);}return 0;}```以上就是使用C语言编写程序来判断素数的方法。

c语言pta习题与答案

c语言pta习题与答案

c语言pta习题与答案C语言是一门广泛应用于计算机科学领域的编程语言,它具有简洁、高效的特点,因此在程序设计教育中被广泛采用。

PTA(Programming Technology Association)是一个在线的编程练习平台,提供了大量的C语言习题和答案,帮助学习者巩固和提升编程能力。

本文将探讨一些常见的C语言PTA习题及其答案,希望对初学者有所帮助。

1. 习题一:计算两个数的和这是一个简单的习题,要求用户输入两个整数,然后计算它们的和并输出。

解决这个问题的C语言代码如下:```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两个数的和为:%d\n", sum);return 0;}```2. 习题二:判断一个数是否为素数素数指的是只能被1和自身整除的数,例如2、3、5、7等。

这个习题要求用户输入一个正整数,然后判断它是否为素数。

解决这个问题的C语言代码如下:```c#include <stdio.h>int main() {int num, i, flag = 1;printf("请输入一个正整数:");scanf("%d", &num);for(i = 2; i <= num / 2; i++) {if(num % i == 0) {flag = 0;break;}}if(flag == 1)printf("%d是素数\n", num);elseprintf("%d不是素数\n", num);return 0;}```3. 习题三:统计字符串中的单词个数这个习题要求用户输入一段字符串,然后统计其中的单词个数。

素数判断c语言

素数判断c语言

素数判断c语言什么是素数?素数又叫质数,指在大于1的自然数中,除了1和本身,不能被其他自然数整除的数。

例如:2、3、5、7、11、13、17、19等都是素数。

素数判断的方法对于一个数n,如果想要判断它是否为素数,常见的方法有以下几种:1.暴力枚举法只需要从2到n-1枚举每一个数,如果n能被其中的一个数整除则说明n不是素数。

这种方法的时间复杂度为O(n)。

2.枚举到根号n因为n如果有一个大于根号n的因子,必然有一个小于根号n的因子,所以只需要枚举到根号n即可。

3.筛法筛法是一种更加高效的素数判断方法,它可以在O(nloglogn)的时间内得到小于等于n的所有素数。

具体流程:1)先将2到n的数列打上标记,都为素数;2)从2开始,将素数的倍数打上合数的标记,比如4、6、8、10…都为合数,清除2的所有倍数3)下一个未被打上标记的数是素数4)重复第二步,直到整个数列都被处理过代码实现下面是一段C语言代码,用于判断一个数是否为素数:#include <stdio.h>int isPrime(int n){int i;if(n<2) return 0; //小于2不是素数for(i=2;i*i<=n;i++) //i的平方大于n就没必要再执行下去了,提高效率{if(n%i==0) return 0;}return 1;}int main(){int n;scanf("%d",&n);if(isPrime(n)) printf("%d是素数\n",n);else printf("%d不是素数\n",n);return 0;}可以看到,代码非常简单易懂,只要判断n是否小于2,然后从2开始枚举每个数,看能否被n整除即可。

代码优化上面的代码虽然可以判断素数,但是效率并不高,当n很大时,运行速度会非常慢。

下面,我们来优化代码:1)只需要循环到sqrt(n)即可。

C语言——判断一个数是否为质数素数

C语言——判断一个数是否为质数素数

C语⾔——判断⼀个数是否为质数素数定义:约数只有1和本⾝的整数称为质数,或称素数。

计算机或者相关专业,基本上⼤⼀新⽣开始学编程都会接触的⼀个问题就是判断质数,下⾯分享⼏个判断⽅法,从普通到⾼效。

1)直观判断法最直观的⽅法,根据定义,因为质数除了1和本⾝之外没有其他约数,所以判断n是否为质数,根据定义直接判断从2到n-1是否存在n的约数即可。

C++代码如下:bool isPrime_1( int num ){int tmp =num- 1;for(int i= 2;i <=tmp; i++)if(num %i== 0)return 0 ;return 1 ;}2)直观判断法改进上述判断⽅法,明显存在效率极低的问题。

对于每个数n,其实并不需要从2判断到n-1,我们知道,⼀个数若可以进⾏因数分解,那么分解时得到的两个数⼀定是⼀个⼩于等于sqrt(n),⼀个⼤于等于sqrt(n),据此,上述代码中并不需要遍历到n-1,遍历到sqrt(n)即可,因为若sqrt(n)左侧找不到约数,那么右侧也⼀定找不到约数。

C++代码如下:1. bool isPrime_2( int num )2. {3. int tmp =sqrt( num);4. for(int i= 2;i <=tmp; i++)5. if(num %i== 0)6. return 0 ;7. return 1 ;8. }3)另⼀种⽅法⽅法(2)应该是最常见的判断算法了,时间复杂度O(sqrt(n)),速度上⽐⽅法(1)的O(n)快得多。

最近在⽹上偶然看到另⼀种更⾼效的⽅法,暂且称为⽅法(3)吧,由于找不到原始的出处,这⾥就不贴出链接了,如果有原创者看到,烦请联系我,必定补上版权引⽤。

下⾯讲⼀下这种更快速的判断⽅法;⾸先看⼀个关于质数分布的规律:⼤于等于5的质数⼀定和6的倍数相邻。

例如5和7,11和13,17和19等等;证明:令x≥1,将⼤于等于5的⾃然数表⽰如下:······ 6x-1,6x,6x+1,6x+2,6x+3,6x+4,6x+5,6(x+1),6(x+1)+1 ······可以看到,不在6的倍数两侧,即6x两侧的数为6x+2,6x+3,6x+4,由于2(3x+1),3(2x+1),2(3x+2),所以它们⼀定不是素数,再除去6x本⾝,显然,素数要出现只可能出现在6x的相邻两侧。

c语言判断素数的函数程序

c语言判断素数的函数程序

c语言判断素数的函数程序一、题目背景素数是指只能被1和自身整除的正整数。

在计算机编程中,判断一个数是否为素数是一项基础且常见的操作。

本文将介绍如何用C语言编写一个判断素数的函数程序。

二、函数原型判断素数的函数原型如下:int is_prime(int n);其中,n为待判断的正整数,函数返回值为1表示n是素数,返回值为0表示n不是素数。

三、算法思路判断一个正整数是否为素数的方法有很多种,本文将介绍两种常见的方法:试除法和埃氏筛法。

1. 试除法试除法是最简单直观的一种方法。

它的基本思路是:将待判断的正整数n分别除以2到sqrt(n)之间的每个正整数m,如果存在任意一个m使得n能够被m整除,则n不是素数;否则n是素数。

2. 埃氏筛法埃氏筛法又称“爱氏筛法”,它可以在O(nloglogn)时间复杂度内求出小于等于n(其中n为正整数)的所有素数。

该方法基于以下性质:如果一个正整数x不是素数,则它可以表示成两个较小正整数p和q(x=pq)的乘积形式。

如果p和q均大于sqrt(x),则它们的乘积也一定大于x,这与x=pq矛盾。

因此,只需要考虑sqrt(n)以内的正整数是否为素数即可。

四、函数实现1. 试除法实现下面是一个使用试除法判断素数的C语言函数实现:int is_prime(int n){if (n < 2) // 小于2的数不是素数return 0;for (int i = 2; i * i <= n; i++) // 只需循环到sqrt(n)即可if (n % i == 0)return 0;return 1;}2. 埃氏筛法实现下面是一个使用埃氏筛法判断素数的C语言函数实现:int is_prime(int n){if (n < 2) // 小于2的数不是素数return 0;int prime[n + 1]; // 标记数组,用来记录每个数字是否为素数 memset(prime, 1, sizeof(prime));for (int i = 2; i * i <= n; i++) // 只需循环到sqrt(n)即可if (prime[i]) // 如果i是素数,则将i的倍数都标记为非素数 for (int j = i * i; j <= n; j += i)prime[j] = 0;return prime[n];五、函数测试下面是一个使用上述函数判断素数的示例程序:#include <stdio.h>int is_prime(int n);int main(){int n;printf("请输入一个正整数:");scanf("%d", &n);if (is_prime(n))printf("%d是素数。

c语言素数的判断 -回复

c语言素数的判断 -回复

c语言素数的判断-回复C语言素数的判断是一项基本的编程技巧。

在这篇文章中,我们将一步一步地解释如何编写一个程序来判断一个给定的数字是否为素数。

素数,也叫质数,是指只能被1和自身整除的正整数。

比如,2、3、5、7就是素数,因为它们无法被其他整数整除。

而4、6、8则不是素数,因为它们可以被2整除。

在C语言中,我们可以使用循环和条件语句来判断一个数字是否为素数。

下面是一个完整的素数判断程序:cinclude <stdio.h>int isPrime(int number) {if (number <= 1) {return 0;}for (int i = 2; i * i <= number; i++) {if (number i == 0) {return 0;}}return 1;}int main() {int number;printf("请输入一个正整数:");scanf("d", &number);if (isPrime(number)) {printf("d是素数。

\n", number);} else {printf("d不是素数。

\n", number);}return 0;}程序的核心部分是`isPrime`函数,它接受一个整数作为参数,并返回一个布尔值(0表示非素数,1表示素数)。

该函数的实现思路如下:首先,检查参数是否小于等于1,因为小于等于1的数都不是素数,所以直接返回0。

如果参数大于1,则进行进一步的检查。

接下来,使用一个循环遍历2到`number`的平方根之间的所有整数。

对于每个整数`i`,如果`number`能被`i`整除,则说明`number`不是素数,返回0。

如果循环结束后仍然没有找到能整除`number`的整数,则说明`number`是素数,返回1。

在`main`函数中,我们首先获取用户输入的数字,然后调用`isPrime`函数进行判断。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.直接判断一个数是否为素数,代码如下:
/*Байду номын сангаас
目的:判断一个数是否是素数
*/
# include <>
int main(void)
{
int val;
int i;
scanf("%d",&val);
for(i = 2; i < val; i++)过函数来判断
/*
目的:通过函数判断一个数是否是素数
*/
# include <>
bool f(int m)
{
int i;
for(i = 2;i < m; i++)
{
if(m % i == 0)
break;
}
if(i == m)
return true;
else
return false;
}
int main(void)
{
int val;
scanf("%d",&val);
if (f(val)) //注:此处若写成:if (f(val) == true) 也可以。
printf("YES\n");
else
printf("NO\n");
}
对比上述两种方法可见,通过函数来实现比较合适,因为如果要判断的数据过多时,要通过第一种方法实现的话,代码太多,而且也不便于调用,因此推荐使用函数实现此功能。其他功能也是如此,建议养成用函数来实现某些单一的功能,这样即减少了代码的重复度,同时也方便其他函数的调用,有利于提高代码的使用效率。
相关文档
最新文档