#include<stdio.h>int IsPrime( int x); //函数原型声明int main(){int n, sum;printf("Please input n(n>1):");scanf_s("%d", &n);sum = IsPrime(n); //调用函数,将返回值存入sumprintf("sum of prime numbers:%d", sum);return 0;}int IsPrime(int x) //函数定义{int i, n, h = 2;for (i = 2; i <= x; i++){for (n = 2; n <= i; n++){if (n == 2 && i == 2){printf("%d\n", 2);}else if (i % n == 0 && n != i - 1){break;}else if (i % n != 0 && n == i - 1){h = h + i;printf("%d\n", i);break;}}}return h;}
关键在于素数的判断
这里可以不使用函数
使用嵌套循环。
测试用例:
注:编者水平有限,若有错误欢迎指正,或者有更好的解决办法欢迎提出讨论
输出 2~n之间所有素数 并求和 n由键盘输入。素数是只能被1和自身整除的整数。要求编写函数判断自然数x是否为素数
如果觉得《输出 2~n之间所有素数 并求和 n由键盘输入。素数是只能被1和自身整除的整数。要求》对你有帮助,请点赞、收藏,并留下你的观点哦!