本题要求统计给定整数M和N区间内素数的个数并对它们求和。
输入格式:
输入在一行中给出两个正整数M和N(1≤M≤N≤500)。
输出格式:
在一行中顺序输出M和N区间内素数的个数以及它们的和,数字间以空格分隔。
输入样例:
10 31
结尾无空行
输出样例:
7 143
结尾无空行
解析:
求关于素数的题目无疑是学c的基基基基基基本功,我们需要注意引入flag在条件中的存在以及扮演的作用,在特殊情况下进行改变,更加方便我们控制程序
答案:
#include<stdio.h>
int isSu(int a)
{
int i;
int flag=1;
if(a<2){
flag=0;
}else if(a==2){
flag=1;
}else{
for(i=2;i<a;i++){
if(a%i==0){
flag=0;
break;
}
}
}
return flag;
}
int main(void)
{
int M,N,t=0,sum=0,i;
scanf("%d %d",&M,&N);
for(i=M;i<=N;i++){
if(isSu(i)){
t+=1;
sum+=i;
}
}
printf("%d %d\n",t,sum);
}