给定程序MODll.C中函数fun的功能是:求整数X的Y次方的低3位值。例如,整数5的6次方为15625,此值的低3位值为625。 请改正函数fun中指定部位的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得

admin2020-11-27  32

问题 给定程序MODll.C中函数fun的功能是:求整数X的Y次方的低3位值。例如,整数5的6次方为15625,此值的低3位值为625。
    请改正函数fun中指定部位的错误,使它能得出正确的结果。
    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
long fun(int X,int Y,long *P)
{  int i ;
  long t=1;
/**********found***********/
  for(i=1;i    t=t*X;
  *P=t;
/**********found***********/
  t=t/1000;
  return t;
}
main()
{ long t,r;int X,Y;
  printf(“\nInput X and Y:  ”);
Scanf(“%ld%ld”,&x,&y);
  t=fun(x,Y,&r);
  printf(“\n\nx=%d,  y=%d,  r=%ld,
last=%ld\n\n”,x,y,r,t);
}

选项

答案(1)for(i=1 ; i<=v; i++) (2)t=t%1000;

解析  函数的功能是求整数x的y次方的低3位值。
    (1)第一个标识下的“for(i=1;i    (2)题目中要求截取前面求得结果的低三位,因此,第二个标识下“t=t/1000;”应该改为“t=t%1000;”。
转载请注明原文地址:https://kaotiyun.com/show/9a3p777K
0

最新回复(0)