博客
关于我
Problem B: 判断素数的函数
阅读量:258 次
发布时间:2019-03-01

本文共 832 字,大约阅读时间需要 2 分钟。

判断素数问题

编写一个高效判断素数的函数,并利用该函数打印n与m之间(包含n和m)的所有素数。

输入

多组测试数据,每组输入两个整数n和m,其中1 < n ≤ m ≤ 1000。

输出

在一行输出n和m之间(包含n和m)所有的素数,中间用空格隔开,最后一个数后面没有空格。

样例输入

2 14

样例输出

2 3 5 7 11 13

代码解析

#include 
int isPrime(unsigned int n) { int i; if (n <= 1) { return 0; } for (i = 2; i * i <= n; i++) { if (n % i == 0) { return 0; } } return 1;}int main() { int m, n; while (scanf("%d %d", &m, &n) != EOF) { int i, count = 0; for (i = m; i <= n; i++) { if (isPrime(i)) { printf("%d", i); } } printf("\n"); } return 0;}

功能说明

  • isPrime函数:该函数用于判断一个数是否为素数。其逻辑基于试除法,即检查从2到√n的所有整数是否能整除n。如果有任何一个数能整除n,则n不是素数。

  • main函数:作为程序的主函数,负责读取输入并输出结果。程序通过循环读取每组输入的n和m,然后遍历从m到n的所有整数,利用isPrime函数筛选出素数并打印。

  • 输出要求:输出的素数之间用空格分隔,最后一个数后不加空格。每处理完一组输入后,换行输出。

  • 转载地址:http://zsux.baihongyu.com/

    你可能感兴趣的文章
    Spring @Async执行异步方法的简单使用
    查看>>
    PAT (Basic Level) Practice 乙级1021-1030
    查看>>
    PAT (Basic Level) Practice 乙级1031-1040
    查看>>
    PAT (Basic Level) Practice 乙级1041-1045
    查看>>
    SparkSql的元数据
    查看>>
    PAT (Basic Level) Practice 乙级1051-1055
    查看>>
    PAT (Basic Level) Practise - 写出这个数
    查看>>
    PAT 1027 Colors in Mars
    查看>>
    PAT 1127 ZigZagging on a Tree[难]
    查看>>
    PAT 2-07. 素因子分解(20)
    查看>>
    PAT A1033 重点题
    查看>>
    SparkSQL学习03-数据读取与存储
    查看>>
    PAT L2-012. 关于堆的判断
    查看>>
    PAT Spell It Right [非常简单]
    查看>>
    PAT-1044. Shopping in Mars (25)
    查看>>
    PAT-乙级-1040 有几个PAT
    查看>>
    Spring组件扫描配置
    查看>>
    PAT1093 Count PAT's (25)(逻辑题)
    查看>>
    PATA1038题解(需复习)
    查看>>
    Patching Array
    查看>>