题目来源于PAT平台,此题又是费了一番脑子。题目要求输出给定区间内的素数个数并对他们求和。具体思路是利用循环判断素数,将结果传递给控制变量,由控制变量再来判断是否执行自增以及求和。当然这里必须要注意1既不是素数也不是合数。
下面是代码:
复制代码 代码如下:
#include <stdio.h>
int main ()
{
int a=0,b=0;
int n=0,sum=0;
int x=0,i=0;
scanf("%d %d",&a,&b);
int check=1; //假设为素数
for (x=a;x<=b;x++){
check=1;
for (i=2;i<x;i++){
if (x%i==0){
check=0;
break;
} //该循环用于判定是否为素数,遍历一遍小于x的数,如果有能整除x的即给变量赋值为0,并直接跳出循环
}
if (check != 0 && x!=1){
n++;
sum+=x;
} //该if用于判断之前循环传递的check值,并且加入x是否为1的判断
}
printf("%d %d",n,sum);
return 0;
}
#include <stdio.h>
int main ()
{
int a=0,b=0;
int n=0,sum=0;
int x=0,i=0;
scanf("%d %d",&a,&b);
int check=1; //假设为素数
for (x=a;x<=b;x++){
check=1;
for (i=2;i<x;i++){
if (x%i==0){
check=0;
break;
} //该循环用于判定是否为素数,遍历一遍小于x的数,如果有能整除x的即给变量赋值为0,并直接跳出循环
}
if (check != 0 && x!=1){
n++;
sum+=x;
} //该if用于判断之前循环传递的check值,并且加入x是否为1的判断
}
printf("%d %d",n,sum);
return 0;
}
相关文章
猜你喜欢
- ASP.NET自助建站系统中如何实现多语言支持? 2025-06-10
- 64M VPS建站:如何选择最适合的网站建设平台? 2025-06-10
- ASP.NET本地开发时常见的配置错误及解决方法? 2025-06-10
- ASP.NET自助建站系统的数据库备份与恢复操作指南 2025-06-10
- 个人网站服务器域名解析设置指南:从购买到绑定全流程 2025-06-10

