素数和
Posted 读你一世
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了素数和相关的知识,希望对你有一定的参考价值。
题目内容:
我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推。
现在,给定两个整数n和m,0<n<=m<=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。
输入格式:
两个整数,第一个表示n,第二个表示m。
输出格式:
一个整数,表示第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。
输入样例:
2 4
输出样例:
15
- #include <stdio.h>
- int main(){
- int n, m;
- int i, j, o = 2;//o表示第几个素数
- int flag = 0;//用于标记非素数
- int sum = 0;//sum表示所求素数总和
- do
- {
- scanf("%d%d",&n,&m);
- }
- while(n<=0||m<n||m>200);
- if(n==1)
- sum+=2; // 第一个素数为2 sum+2;
- for(i=3;;i++)
- {
- flag = 0;
- if(o>m){
- break;
- }
- for(j=2; j<i; j++){
- if(i%j == 0){
- flag=1 ;//判断是否非素数
- break;
- }
- }
- if(flag == 0){
- if(o>=n){
- sum+=i;//判断是否在第n个素数到第m个之间
- }
- o++;
- }
- }
- printf("%d\n",sum);
- return 0;
- }
以上是关于素数和的主要内容,如果未能解决你的问题,请参考以下文章