解题思路:
1.先建立一个循环m<=i<=n,依次判断在这一区间的每个数是否是素数,在循环内部调用isprime(i)函数;

2.在int isprime(int x)函数中,我们要判断x是否是素数:设立一个循环2<=i<=x;循环内部设立一个标志符号flag=1,默认为1即判定为是素数;然后再设立一个循环2<=j<i,循环内部判断,if(i%j==0)这说明不是素数,flag=0;否则flag=1,此时sum+=i;
3.返回int isprime(int x)中的sum给main函数(注意在main函数中要有一个变量sum1接收从isprime函数中返回来的数值),最后输出即可。

注意事项:





参考代码:

#include<stdio.h>

int isprime(int x)

{

     int i,j,sum=0;

     for(i=2;i<=x;i+=1)

     {

         int flag=1;

         for(j=2;j<i;j++)

          {

             if(i%j==0)

                  flag=0;

          }

            if(flag)

                sum+=i;

    }

    return sum;

}

int main()

{

     int i,m,n,sum1=0;

     scanf("%d%d",&m,&n);

     for(i=m;i<=n;i++)

     {

          sum1=isprime(i);

     }

     printf("%d",sum1);

     return 0;

}


点赞(3)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 1 条评论

HOUYI 7年前 回复TA
你这搞复杂了吧