C 语言基础教程

C 语言流程控制

C 语言函数

C 语言数组

C 语言指针

C 语言字符串

C 语言结构体

C 语言文件

C 其他

C 语言参考手册

C程序检查数字是否为质数

C 语言编程实例大全

在此示例中,您将学习检查用户输入的整数是否是质数。

要理解此示例,您应该了解以下C语言编程主题:

质数是一个正整数,只能被1其自身整除。例如:2、3、5、7、11、13、17

程序检查素数

#include <stdio.h>
int main() {
    int n, i, flag = 0;
    printf("输入一个正整数: ");
    scanf("%d", &n);

    for (i = 2; i <= n / 2; ++i) {

        // 非质数的条件
        if (n % i == 0) {
            flag = 1;
            break;
        }
    }

    if (n == 1) {
        printf("1既不是质数也不是合数。");
    }
    else {
        if (flag == 0)
            printf("%d 是质数。", n);
        else
            printf("%d 不是质数。", n);
    }

    return 0;
}

输出结果

输入一个正整数: 29
29 是质数。

在程序中,for循环从迭代i = 2到i < n/2。

在每次迭代中,检验n是否能被i完全整除:

if (n % i == 0) {
   
}

如果n能被i整除,n就不是质数。在本示例中,将flag设置为1,并使用break语句终止循环。

循环之后,如果n是质数,flag仍然为0。但是,如果n是非质数,则flag为1。

访问此页面以了解如何打印两个间隔之间的所有素数

C 语言编程实例大全