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

admin2013-03-25  32

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

选项

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

解析 根据C语言的语法规则,每一条语句都要以分号结束,因此k++后要加上分号。而在if语句中,而不是把k的一值赋给m,因此把m=k改为m==k。
转载请注明原文地址:https://kaotiyun.com/show/3XJp777K
0

最新回复(0)