下列给定程序中,函数fun的功能是:找出一个大于给定整数m且紧随m的素数,并作为函数值返回。 请改正程序中的错误,使它能得出正确的结果。 注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!

admin2021-02-25  30

问题 下列给定程序中,函数fun的功能是:找出一个大于给定整数m且紧随m的素数,并作为函数值返回。
    请改正程序中的错误,使它能得出正确的结果。
    注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
    试题程序:
1  #include<stdlib.h>
2  #include<conio.h>
3  #include<stdio.h>
4   int fun(int m)
5  {int i,k;
6    for(i=m+1;; i++)
7    {for(k=2;k8    /*********found*********/
9    if(i%k!=0)
10    break;
11    /*********found*********/
12    if(k13    return(i);
14    }
15   }
16   void main()
17  { int n;
18    system(’’CLS’’);
19   printf(’’\nPlease enter n:’’);
20   scanf(’’%d’’,&n);
21   printf(’’%d\n’’,fun(n));
22   }

选项

答案(1)if(i%k==0) (2)jf(k==i)

解析 (1)判断当前数是否为素数,若存在一个数(除1和其自身)能整除当前数,则跳出本次循环,所以if条件应为i%k==0。
(2)如果i是素数,则循环结束时k==j,将该值返回。
转载请注明原文地址:https://kaotiyun.com/show/nhtp777K
0

最新回复(0)