2005上半年程序员考试真题及答案-下午卷.docVIP

  • 0
  • 0
  • 约6.98千字
  • 约 10页
  • 2021-08-24 发布于北京
  • 举报

2005上半年程序员考试真题及答案-下午卷.doc

2005上半年程序员考试真题及答案-下午卷 试题一至试题三是必答题 试题一(15分,每空3分)   阅读以下说明和流程图,回答问题1至问题2将解答填入答题纸的对应栏内。 [说明]   设8位二进制代码 B0B1...B7中的最高位B0为奇偶校验位。对于任何给定的代码B1B2...B7,可按下式计算偶校验位:     B0= B1⊕B2⊕…⊕B7   其中, 表示异或运算。   下面的流程图描述了计算偶校验位的过程。 [流程图]   注:流程图,循环开始的说明按照循环变量名:循环初值,循环终值,增量格式描述。 [问题1]   将流程图中的(1)~(4)处补充完整。 [问题2]   若按下式计算奇校验位,则上述流程图中的(1)处应填(5) 。     B0= B1⊕B2⊕…⊕B7⊕1 试题二(15,每空3分)   阅读以下函数说明和C语言函数,将应填入___(n)___处的字句写在答题纸的对应栏内。 [函数2.1说明]   函数int funl (int m, int n)的功能是:计算并返回正整数m和n的最大公约数。 [函数2.1]   int funl (int m, int n)   {    while (___(1)___){     if(m﹥n) m=m-n;     else n= n-m;    }    ___(2)___;   }? [函数2.2说明]   函数long fun2(char*str)的功能是:自左至右顺序取出非空字符串str中的数字字符形成一个十进制整数(最多8位)。   例如,若字符串str的值为f3g8d5.ji2e3p12fkp,则函数返回值为3852312。 [函数2.2]   long fun2(char *str)   { int i=0;    long k=0;    char *p=str ;    while (*p != /0 (3) ) {     if(*p ?=0 *p ?=9){      k=___(4)___+*p-0;      ++i;     }     ___(5)___;    }    Return k;   } 试题三(15分,每空3分)   阅读以下说明和C语言函数,将应填入___(n)___处的字句写在答题纸的对应栏内。 [说明]   一棵非空二叉树中最左下结点定义为:若树根的左子树为空,则树根为最左下结点;否则,从树根的左子树根了发,沿结点的左孩子分支向下查找,直到某个结点不存在左孩子时为止,该结点即为此二叉树的最左下结点。例如,下图所示的以A为根的二叉树的最左下结点为D,以C为根的子二叉树中的最左下结点为C。   二叉树的结点类型定义如下:   typedef struct BSTNode{    int data;    struct BSTNode *lch ,*rch;  //结点的左、右孩子指针   }*BSTree;?   函数BSTree Find_Del (BSTree root)的功能是:若root 指向一棵二叉树的根结点,则找出该结点的右子树上的最左下结点*p,并从树下删除以*p为根的子树,函树返回被删除子树的根结点指针;若该树根的右子树上不存在最左下 结点,则返回空指针。 [函数]   BSTree Find_Del (BSTree root)   { BSTree p,pre;    if (!root)return NULL;   /*root指向的二叉树为空树*/    ___(1)___;         /*令p指向根结点的右子树*/    if (!p) return NULL;    /*设置pre的初值*/    ___(2)___;         /*查到最左下结点 */    Pre=p;p=___(3)___;   }   if (___(4)___ == root)     /*root的右子树根为最左下结点*/    pre - rch = NULL;   else    ___(5)___ = NULL;      /*删除以最左下结点为根的子树*/   return p;   } 试题四至试题五选答1道 试题四(15分,每空3分)   阅读以下说明和C语言函数,将应填入___(n)___处的字句写在答题纸的对应栏内。 [说明]   假设一个剧场有N*N个座位,顾客买票时可以提出任意有效的座号请求。下面用二维数组a[N] [N],模拟剧场中的座位,a[i] [j]等于0表示第i排第j列(0≤I,j≤N-1)的票尚未售出。   函数 int Find(int a [][N],int R,int*row,int *col)的功能是:在部分票已售出的情况下,找出剧场中的R*R

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档