C语言编程 C语言编程

统计200-400之间有多少素数,输出这些素数、素数总数及它们的和

可以定义一个函数来判断数字是否是素数,然后从200到400遍历即可。代码注释写的比较详细。
运行结果如下(素数每5个一行输出,如果不需要,把if(nmb%5==0) printf("\n")这两句删掉即可):

img

代码:

#include <stdio.h>

//判断n是否是素数
int prime(int n)
{
    int i;
    if (n < 2) return 0;
    for (i = 2; i < n; i++)
    {
        if (n % i == 0)
            return 0;
    }
    return 1;
}


int main()
{
    int i;
    int sum = 0; //素数和
    int nmb = 0; //素数的个数
    for (i = 200; i <= 400; i++)
    {
        if (prime(i))
        {
            sum += i; //和累加
            nmb++; //个数+1
            
            printf("%d ", i); //输出素数
            if (nmb % 5 == 0) //每5个素数一行
                printf("\n");
        }
    }

    printf("\n共%d个素数,这些素数的和为%d\n", nmb, sum);

    return 0;
}

代码如下,记得采纳哦!

#include<stdio.h>
int main()
{
    int count = 0, num=0; 
    for(int n=200;n<=400;n++){
        int flag = 1;
        for(int i=2;i<n;i++){
            if (n % i == 0){
                flag = 0;
                break;
            }
        }
        if(flag==1){    
            count++;
            num+=n;
            printf("%d ",n);
            if (count%3 ==0){  //每三个换行 
                printf("\n");
            }
        }      
    }
    printf("\n200-400素数个数为%d,它们的和为%d",count,num);
 } 

img

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632