问答详情
源自:4-6 循环结构之while循环

求两数间的素数和 我找不到我的bug

#include<stdio.h>

void main()

{

int prime(int m);

int m, n, count = 0, sum = 0, i;

printf("请输入正整数m和n:");

scanf_s("%d%d", &m, &n);

for (i = m; i <= n; i++) {

if (prime(m))

{count=count+1; sum = sum + i; }

};

printf("素数个数为%d,素数的和为%d", count, sum);

getchar();

getchar();

}

int prime(int x)

{

int i = 2;

for (i = 2; i < x; i++)

if (x%i == 0) break;

if (i >= x) return 1;

else return 0;

}


提问者:liaoexiang 2017-11-07 17:09

个回答

  • qq_宽恕_1
    2017-11-07 18:03:19
    已采纳

    if (prime(m))中,prime中的判定条件应为i而不是m

  • Labulafu
    2017-11-07 17:40:45

    第一个scanf后面带了“-s”,有些看不懂你后面代码要做的事情,可以说明一下吗?