导航:首页 - 2008年11月程序员笔试考前练习(1)

2008年11月程序员笔试考前练习(1)
作者:深圳教育在线 来源:szedu.net 更新日期:2008-10-11
  阅读以下程序说明和C程序,将应填入__(n)__ 处的字句,写在答卷的对应栏内。
  [程序说明]
  本程序中的函数factor( m,fac,cp )用来计算正整 m ( m > 2 )的除自身以外的所有不同因子的和。该函数返回因子和,并把各因子从小到大依次存放在数组 fac 中,其因子个数存入在 cp 所指的变量中。
  例如 m=16,求得的因子为
  (1,2,4,8)
  考试大提示:因子和为15,因子个数为4。
  程序假定正整数 m 的不同因子个数不会超过100个。
  [程序]
  # include
  # define N 100
  long factor (int m,int fac[],int *cp)
  {
    int c1, c2 , i, k;
    long s;
   fac[0] = 1;
    for(c1 = s = 1,c2 = N-1,____(1)____;;)
    {
     k = m/i;
     if (____(2)____)
     if (____(3)____)
     { fac[c1++] = i;
      fac[c2--] = k;
      s + = i+k;
     }
    else {
   fac[c1++] = i;
      s + = i;
     }
     i++;
      if(i>=k) brdak;
   }
    for (c2++;c2 <= N-1;c2++)
      ____(4)____;
    *cp=c1;
    return ____(5)____;
  答案:
  1)3分 i = 2,或 cl + 1
  2)3分 m % i == 0 (或 !(m % i) 或 m == i * k )
  3)3分 i ! = k (或 i < k )
  4)3分 fac [ cl ++ ] = fac [ c2 ]
  答 cl ++ 给 1 分,‘ = ’左右只对一半给 1 分。
  5)3分 s

报 名 此 课 程 / 咨 询 相 关 信 息
【预约登门】 【网上咨询】 【订座试听】 【现在报名】
课程名称
2008年11月程序员笔试考前练习(1)
真实姓名
* 性 别
联系电话
* E-mail:
所在地区
咨询内容

      

相关文章:

Copyright© 2004-2010 www.szedu.net 深圳教育在线 版权所有
中国·深圳
粤ICP备06023013号