P121 三、程序设计题中的第四题,翁恺老师在视频中用到了布尔值
#include <stdio.h>
#include <math.h>
int prime(int m, int n);
int main(void)
{
int m, n, z;
printf("please enter m , n \n");
scanf("%d", &m);
scanf("%d", &n);
printf("%d", prime(m, n));
}
int prime(int m, int n)
{
int flag, limit, k, i, sum;
sum = 0;
int cnt = 0;
if (m == 1)
m = 2;
for (i = m; i <= n; i++)
{
int isPrime = 1;
for (k = 2; k < i - 1; k++)
{
if (i % k == 0)
{
isPrime = 0;
break;
}
if (isPrime)//布尔值 isPrime!=0.c语言里任何语句都可以成为表达式,而任何表达式都是可以求值的,
//有些表达的值可能没有意义,比如对返回值为void 的函数调用求值是没意义的,编译器可能会报错。
//if语句会对括号里的表达式求值,由于if语句只接受真和假两个值,而c语言中,0为假,其他一切非0值为真,if(x)表达的意义:如果x为真(即:x不为0)。
{
cnt++;
sum += i;
}
}
}
return sum;
}