下列给定程序中函数fun的功能是:判断一个整数是否为素数,若是素数返回1,否则返回0。 在main函数中,若fun返回1输出YES,若fun返回0输出NO!。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,

admin2020-10-26  26

问题 下列给定程序中函数fun的功能是:判断一个整数是否为素数,若是素数返回1,否则返回0。
    在main函数中,若fun返回1输出YES,若fun返回0输出NO!。
    请改正程序中的错误,使它能得出正确的结果。
    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
    试题程序:
1  #include<stdlib.h>
2  #include<conio.h>
3   #include<stdio.h>
4  int fun(int m)
5  {
6    int k=2;
7    while(k<=m&&(m%k))
8    /*********found*********/
9    k++
10    /*********found*********/
10    if(m=k)
12    return 1;
13    else return 0;
14  }
15   void main()
16  {
17    int n;
18    system(’’CLS’’);
19   printf(’’\nPlease enter n:’’);
20    scanf(’’%d’’,&n);
21    if(fun(n))printf(’’YES\n’’);
22    else printf(’’NO!\n’’);
23  }

选项

答案(1)k++ ; (2)if(m==k)

解析 函数fun的功能是判断m是否为素数:m从2开始作为除数,并对m取余,若不存在一个数使得余数为0,则m为素数,程序的错误在于if(m=k)语句中的逻辑表达式写成了赋值语句。
转载请注明原文地址:https://kaotiyun.com/show/HC3p777K
0

最新回复(0)