赞
踩
分析:只能被 1和它本身整除的整数称为素数。在数学中,要判断n是否为素数,通常让n除以2~的每一个整数,如果, 能被 2~的某个整数整除,则说明,不是素数,否则n一定是素数
方法一:用for语句判断n是否为整数
- #include"math.h"
- #include"stdio.h"
- main()
- {
- int n,m,i,flag=0;
- printf("\n输人整数n=");
- scanf("%d",&n);
- m=sqrt(n);
- for(i=2;i<=m;i++)
- if(n%i==0)
- {
- flag=1;
- break;
- }
- if(flag)
- printf("\n%d不是素数.\n",n);
- else
- printf("\n%d是素数.\n",n);
- }
方法二 :编写一个判断函数,再在主函数里调用;
- #include <stdio.h>
- #include<math.h>
- int is_prime(int num)
- {
- int i;
- if (num<= 1) {
- return 0;
- }
- for(i=2;i<=sqrt(num);i++)
- {
- if (num%i==0)
- {
- return 0;
- }
- }
- return 1;
- }
-
- int main() {
- int num;
- printf("请输入一个整数:");
- scanf("%d", &num);
-
- if (is_prime(num))
- {
- printf("%d是素数。\n", num);
- }
- else
- {
- printf("%d不是素数。\n", num);
- }
-
- return 0;
- }
在这个代码中,我们首先定义了一个名为 `is_prime` 的函数,它接受一个整数作为参数。函数首先检查输入的整数是否小于等于1,如果是,则直接返回0,因为小于等于1的数不是素数。接下来,我们使用一个循环来从2开始遍历到输入整数的平方根,并检查输入的整数是否能被其中任何一个数整除。如果可以,返回0,表示该整数不是素数;否则,返回1,表示该整数是素数。
在 `main` 函数中,我们首先提示用户输入一个整数,然后调用 `is_prime` 函数来判断输入的整数是否为素数。如果是素数,输出 "%d是素数。";否则,输出 "%d不是素数。"。最后,返回0表示程序结束。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。