C语言 判断素数

素数又称质数。所谓素数是指除了 1 和它本身以外,不能被任何
整数整除的数,例如17就是素数,因为它不能被 2~16 的任一整数整除。

方法一:常规计算

#include <stdio.h>
void main(){
    int a=0,i;  // 素数的个数
    int num=0;  // 输入的整数
    printf("输入一个整数:");
    scanf("%d",&num);
		for(i=2;i<num;i++){
			if(num%i==0){
				a++;  // 素数个数加1
			}
		}
		if(a==0){
			printf("%d是素数。\n", num);
		}else{
			printf("%d不是素数。\n", num);
		}
}

方法二:函数调用

#include <stdio.h>
int num(int n){
	int flag,i;
	flag=1;
	for(i=2;i<n;i++){
		if(n%i==0){
			flag=0;
			break;
		}
	}
	return flag;
}
void main(){
    int x,flag,ret; 
    printf("输入一个整数:");
    scanf("%d",&x);
	ret=num(x);
		if(ret){
			printf("%d是素数。\n", x);
		}else{
			printf("%d不是素数。\n", x);
		}
}

在这里插入图片描述


版权声明:本文为Aiden51原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。