初级程序员下午试题模拟51.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
初级程序员下午试题模拟51

初级程序员下午试题模拟51 试题一 阅读以下说明和流程图,填补流程图中的空缺(1)~(5),将解答填入对应栏中。 [说明]    本流程图采用“双向冒泡法”实现对数组a[n]的排序。双向冒泡法就是在逐步缩小的数组内,分别从数组的两端开始向内搜索,同时将大数往上浮,小数往下沉,每次交换一组数。flag是一个标志,发生过交换就置为1,当这个循环过程都不再发生交换时,则数组排序完成。    注:流程中循环开始的说明按照“循环变量:循环初值,循环终值,增量”格式描述;    定义SWAP[a,b]为将a和b两数交换。    [流程图]        [问题]    将流程图的(1)~(5)处补充完整。 试题二 阅读下列函数说明和C语言函数,将应填入  (n)  处的字句写在对应栏内。 [函数2.1说明]    函数int strcmp(char *s,char *t)的功能是比较两个字符串s和t的大小。若s<t,函数返回负数; 若s=t,函数返回0; 若s>t,函数返回整数。    [函数2.1]    int strcmp(char *s,char *t)    {while(*s && *t &&    (1)  ){    s++; t++;    }    return      (2)  ;    }    [函数2.2说明]    在n行n列的矩阵中,每行都有最大的数,求这n个最大数中最小的一个。    [函数2.2]    #include <stdio.h>    #define N 100    int a[N] [N];    void main()  {int row,col,max,min,n;    scanf(%d,&n);    for(row=0; row<n; row++)    for(col=0; col<n; col++)    scanf(%d,&a[row] [col]);    for (row=0; row<n; row++){    for (max=a[row][0],col=1; col<ri; col++){    if(  (3)  )max=a [row][col];    if(  (4)  )    min=max;    else if(  (5)  )    min=max;    }    }    printf(The main of max number is %d\n,min);    } 试题三 阅读下列函数说明和C代码,将应填入  (n)  处的字句写在对应栏内。 [函数说明3.1]    假设两个队列共享一个循环向量空间(参见右图),其类型Queue2定义如下:        typedef struct  {    DateType  data[MaxSize];    int  front[2] ,rear [2];    } Queue2;    对于i=0或1,front[i]和rear[i]分别为第i个队列的头指针和尾指针。函数EnQueue (Queue2*Q,int i,DateType x)的功能是实现第i个队列的入队操作。    [函数3.1]    int EnQueue (Queue2*Q,int i,DateType x)    {    //若第i个队列不满,则元素x入队列,并返回1; 否则返回0。    if  (i<0  ||  i>1)  return 0:    if  (Q->rear [i]  ==Q->front[  (1)  ])    return 0:    Q->data[  (2)  ]=x;    Q->rear[i]=[  (3)  ];    return 1:    }    [函数说明3.2]    函数BTreeEqual(BinTreeNode *T1,BinTreeNode *T2)的功能是用递归法判断两棵二叉树是否相等,若相等则返回1,否则返回0。函数中参数T1和T2分别为指向这两棵二叉树根结点的指针。当两棵树的结构完全相同并且对应结点的值也相同时才被认为相等。    已知二叉树中的结点类型BinTreeNode定义为:    struct BinTreeNode  {    char data;    BinTreeNode *left,  *right;    };    其中data为结点值域,left和right分别为指向左、右子女结点的指针域。    [函数3.2]    int BTreeEqual(BinTreeNode* T1,BinTreeNode* T2)    {    if (T1==NULL

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档