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

admin2010-09-14  54

问题 下列给定程序中,函数fun()的功能是:判断一个整数m是否是素数,若是返回l,否则返回0。在main()函数中,若fun()返回1则输出YES,若fun()返回0则输出NO!
   请改正程序中的错误,使它能得出正确的结果。
   注意:不要改动main函数,不得增行或删行,也不得更改程序的结构.
   试题程序:
    #include  <conio.h>
   #include <stdio.h>
   int fun(int m)
   {  int k=2;
   while (k<=m&&(m%k))
   /*************found*********************/
          k++
   /*************found*********************/
    if(m=k)
         return 1;
    else return O;
  }
  main ( )
  {   iht n;
     clrscr ();
     printf("\nPlease enter n: ");
              scanf ("%d", &n);
     if (fun (n)) printf ("YES\n");
     else printf ("NO! \n");
  }

选项

答案(1)错误:k++ 正确:k++ (2)错误:if(m=k) 正确:if(m==k)

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

随机试题
最新回复(0)