解题思路和注意事项:
isprime()函数中,判断是否为素数从除2开始到除x-1结束,如果期间有一个能被整除,则返回0;
如果都不能被整除,判断其是否大于1,大于1返回1,否则返回0。
在main()函数中可以直接if(isprime()),因为isprime()有一个返回值0或1,可直接判断。
将素数加起来即可。
参考代码:
#include<stdio.h> int isprime(int x) { int i; for(i = 2; i < x; i++){ if(x % i == 0) return 0; } if(x > 1) return 1; else return 0; } int main() { int m,n,sum = 0; scanf("%d%d",&m,&n); for(; m <= n; m++){ if(isprime(m)) sum += m; } printf("%d\n",sum); return 0; }
0.0分
0 人评分
十->二进制转换 (C语言代码)浏览:1291 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:480 |
WU-蓝桥杯算法提高VIP-交换Easy (C++代码)浏览:1107 |
C语言程序设计教程(第三版)课后习题11.8 (C语言代码)浏览:869 |
【魔板】 (C++代码)(时间超限,希望会的帮我改正一下)浏览:737 |
用筛法求之N内的素数。 (C语言代码)浏览:664 |
2^k进制数 (C语言描述,蓝桥杯)浏览:1419 |
蓝桥杯历届试题-翻硬币 (C++代码)浏览:872 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:608 |
Pascal三角 (C语言代码)浏览:641 |