改错
下列给定程序中,fun函数的功能是:判断一个整数是否为素数,若是素数则返回1,否则返回0。在main函数中,若fun返回1输出YES,若fun返回0输出NO。请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
1 #include <stdio.h>
2 #include <stdlib.h>
3 int fun(int m)
4 {
5 int k = 2;
6 while(k<=m && m%k)
7 k++
8 if(m = k)
9 return 1;
10 else return 0;
11 }
12 int main()
13 {
14 int n;
15 printf("Please enter n:");
16 scanf("%d", &n);
17 if(fun(n)) printf("YES\n");
18 else printf("NO\n");
19 return 0;
20 } #include <stdio.h>
#include <stdlib.h>
int fun(int m)
{
for (int n = m >> 1; n > 1; --n)
{
if (!(m % n))
{
return 1;
}
}
return 0;
}
int main()
{
int n;
printf("Please enter n:");
scanf("%d", &n);
if (fun(n)) printf("YES\n");
else printf("NO\n");
return 0;
} 第七行少个分号
第八行改为 if(m==k) sunrise085 发表于 2020-6-28 13:17
第七行少个分号
第八行改为 if(m==k)
不错
页:
[1]