• 智能AI问答!更聪明、更完整、原创作!
  • 一款基于GPT的超级AI机器人,可以回答问题、聊天、创作、写文案!

求100~200间的所有素数输出时每个数占5个字符宽度10个一行要求在奇数中找素数

发布于 2024-07-26 13:08:04

要在C语言中找出100到200之间的所有素数,并按要求格式输出,可以编写如下代码:

#include <stdio.h>
#include <math.h>

int main() {
    int i, j, isPrime;
    for(i = 101; i <= 200; i += 2) { // 从101开始,跳过偶数
        isPrime = 1; // 假设i是素数
        for(j = 3; j <= sqrt(i); j += 2) { // 只需检查奇数因数
            if(i % j == 0) {
                isPrime = 0; // 如果找到因数,则i不是素数
                break;
            }
        }
        if(isPrime) {
            // 打印素数,使用%5d格式化以确保每个数占5个字符宽度
            printf("%5d", i);
            // 每打印10个数换行
            if((i - 101) / 2 % 10 == 0) {
                printf("\n");
            }
        }
    }
    printf("\n"); // 最后一个素数打印后换行
    return 0;
}

这段代码首先检查一个数是否为素数。它从101开始,每次增加2来跳过偶数,因为除了2之外,所有偶数都不是素数。对于每个奇数,程序使用一个内层循环来检查是否有任何奇数因子,如果找到则该数不是素数。如果是素数,就按要求的格式打印出来。每打印10个素数后换行。

0 条评论

发布
问题

在线
客服