报课、招生咨询电话:010-51268840/41

首页 > 计算机考试 > 试题汇编 > 计算机水平考试 > 真题 >
→论坛登陆 用户名  密码  
2007年11月程序员模拟试题(1)下午试卷

作者: 发布时间:2008-04-28 10:28:24 来源:
 ●试题一

  阅读下列算法说明和算法,将应填入(n)处的字句写在答卷的对应栏内。

  【算法说明】

  某英汉词典文件包含N个记录(N>1),每个记录有两个字段:一个是英文单词,另一个是相应的汉语解释。各个记录按英文单词的词典顺序排列,各英文单词并不重复。

  本算法用于维护、更新该英汉词典文件。维护、更新的方法是:首先输入一个英文单词及其汉语解释,然后在该词典中查找输入的英文单词,若找到,则用输入的汉语解释更新原有的解释;若找不到,则需要将输入的英文单词及其汉语解释插入到该词典的适当位置,使各记录仍按英文单词的词典顺序排列。

  【算法】

  第一步读入英汉词典文件,并将读入的N个英文单词依次存放在字符串数组ENG中,将相应的汉语解释依次存放在字符串数组CN中。数组元素CN(i)给出了数组元素ENG(i)的解释。

  第二步输入英文单词及其汉语解释,将它们分别存放在字符串变量E和C中。若E为空串或都是空格,则转向第四步。

  第三步根据变量E的值,用二分法在数组ENG中查找。具体步骤如下:

  1.1→L,N→H

  2.INT((L+H)/2)→K

  3.若E=ENG(K),则C→CN(K),转向第二步

  若EENG(K),则K+1→ (2)

  4.若H

  对I=N,L,-1(始值,终值,增量)循环执行:

  ENG(I)→ENG(I+1)

  CN(I)→CN(I+1)

  然后,将E和C分别存入 (3) 和 (4) ,N+1→N最后转向第二步

  否则,转向 (5)

  第四步将数组ENG和CN输出,形成新的英汉词典文件,算法结束。

  ●试题二

  阅读以下说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。

  【说明】

  函数MultibaseOutput(long n,int B)的功能是:将一个无符号十进制整数n转换成B(2≤B≤16)进制数并输出。该函数先将转换过程中得到的各位数字入栈,转换结束后再把B进制数从栈中输出。有关栈操作的诸函数功能见相应函数中的注释。C代码中的符号常量及栈的类型定义如下:

  #define MAXSIZE 32

  typedef struct{

  int *elem;/*栈的存储区*/

  int max; /*栈的容量,即栈中最多能存放的元素个数*/

  int top;/*栈顶指针*/

  }Stack;

【代码】

  int InitStack(Stack *S,int n)/*创建容量为n的空栈*/

  {S->elem=(int*)malloc(n *sizeof(int));

  if(S->elem==NULL)return-1;

  S->max=n; (1) =0;return 0;

  }

  int Push (Stack *s,int item)/*将整数item压入栈顶*/

  {if(S->top==S->max){printf(″Stack is full!\n″);return-1;}

  (2) =item;return 0;

  }

  int StackEmpty(Stack S){return(! S.top)?1∶0;}/*判断栈是否为空*/

  int Pop(Stack *S)/*栈顶元素出栈*/

  {if(! S->top){printf(″Pop an empty stack!\n″);return -1;}

  return (3) ;

  }

  void MultibaseOutput(long n,int B)

  {int m;Stack S;

  if(InitStack(&S,MAXSIZE)){printf(″Failure!\n″);return;}

  do {

  if(Push(&S, (4) )){printf(″Failure!\n″);return;}

  n= (5) ;

  }while(n !=0);

  while(! StackEmpty(S)){/*输出B进制的数*/

  m=Pop(& S);

  if(m<10)printf(″%d″,m);/*小于10,输出数字*/

  else printf(″%c″,m+55);/*大于或等于10,输出相应的字符*/

  }

  printf(″\n″);

  }

 ●试题三

  阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。

  【说明】

  函数void rcr(int a[],int n,int k)的功能是:将数组a中的元素a[0]~a[n-1]循环向右平移k个位置。

  为了达到总移动次数不超过n的要求,每个元素都必须只经过一次移动到达目标位置。在函数rcr中用如下算法实现:首先备份a[0]的值,然后计算应移动到a[0]的元素的下标p,并将a[p]的值移至a[0];接着计算应移动到a[p]的元素的下标q,并将a[q]的值移至a[p];依次类推,直到将a[0]的备份值移到正确位置。

  若此时移动到位的元素个数已经为n,则结束;否则,再备份a[1]的值,然后计算应移动到a[1]的元素的下标p,并将a[p]的值移至a[1];接着计算应移动到a[p]的元素的下标q,并将a[q]的值移至a[p];依次类推,直到将a[1]的备份值移到正确位置。

  若此时移动到位的元素个数已经为n,则结束;否则,从a[2]开始,重复上述过程,直至将所有的元素都移动到目标位置时为止。

  例如,数组a中的6个元素如图1(a)所示,循环向右平移两个位置后元素的排列情况如图1(b)所示。

 

  【函数】

  void rcr(int a[],int n,int k)

  {int i,j,t,temp,count;

  count=0;/*记录移动元素的次数*/

  k=k%n;

  if( (1) ){/*若k是n的倍数,则元素无须移动;否则,每个元素都要移动*/

i=0;

  while(count

  j=i;t=i;

  temp=a[i];/*备份a[i]的值*/

  /*移动相关元素,直到计算出a[i]应移动到的目标位置*/

  while((j= (2) )!=i){

  a[t]=a[j];

  t= (3) ;

  count++;

  }

  (4) =temp;count++;

  (5) ;

  }

  }

  }

  ●试题四

  阅读下面的要求,在填入适当的语句。

  要求执行该段程序后能弹出一个对话框,对话框中有"确定"和"取消"按钮,以及一个带问号的图标,并要求第一个按钮为默认按钮。

  Private Sub Form_Load()

  MsgBox"要重新输入吗?","询问"

  End Sub

  ●试题五

  阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在答题纸的对应栏内。

【说明】

  本应用程序是一个乘法计算器,其运行窗口如图2所示。

 

  在该界面中,"被乘数"、"乘数"以及"积"等文字为标签,相应的3个输入输出数据框为文本框,此外还有3个命令按钮。用户在"被乘数"和"乘数"相应的文本框内输入数据,再单击"运算"按钮,便能在"积"对应的文本框中看到相乘的结果;当用户单击"清除"按钮时,就会清除各文本框中的数据;当用户单击"关闭"按钮时就会关闭该窗口并退出应用程序。用户不能在"积"对应的文本框中输入数据。

  【属性设置】

  各个对象、有关的属性名以及需要修改的属性值设计如下:

 

  【程序】

  Private Sub cmdMultiply_Click()

  txt3.Text=Trim(Str$( (3) ))′加法运算获得和数

  End Sub

  Private Sub (4) ()

  txt1.Text=" "′空字符串赋值给文本框txt1的内容

  txt2.Text=" "′空字符串赋值给文本框txt2的内容

  txt3.Text=" "′空字符串赋值给文本框txt3的内容

  End Sub

  Private Sub cmdClose_Click()

  (5) ′退出应用程序

  End Sub

    育路网
 
 
                                        
评论】【加入收藏夹】【 】【打印】【关闭
育路网2007年夏令营联展
 更多有关新闻:
 
·[作文雅思写作高分必读:小作文句子模 ·[资讯中心湖北:2008上半年英语等级考试(P
·[综合知识律师评"玫琳凯礼单"事件 倡建公 ·[真题2007年11月程序员模拟试题(1)下
·[考试信息盛大的游戏式管理 ·[考试信息提升核心竞争力的途径
·[综合新闻贵阳禁止公务员赴饮用水源保护区 ·[考试新闻贵阳禁止公务员赴饮用水源保护区
·[考试信息人力资源管理:LBB的团队之惑 ·[真题2007年11月程序员模拟试题(2)下
·[真题2007年11月程序员模拟试题(1)上 ·[统计师上海:2008年统计师5月21日-5月2
·[真题2007年11月程序员模拟试题(2)上 ·[统计师湖北省统计局强调创新理念抓好从
·[综合新闻重庆市08公招公务员笔试成绩及有 ·[考试新闻重庆市08公招公务员笔试成绩及有
发表评论
用户名: 密码:
验证码: 匿名发表
课程搜索:
选择分类:
课程关键字:
课程 学校
 2008年首都高校秋季招生
北京理工大学2008年招生简章
北京文理研修学院2008年招生简章
北京建设大学2008年招生简章
北京中山学院2008年招生简章
北京城市学院2008年招生简章
培黎职业学院2008年招生简章
北京金融学院2008年招生简章
北京吉利大学2008年招生简章
北方工商管理学院2008年招生简章
 本周推荐课程
·初中起点雅思半年脱产 ·启德雅思6分冲刺课程
·新概念1+2册慢速精讲课 ·环球新托福100分强化
·北文王长喜四级强化班 ·英语四、六级培训课程
·海文考研数学课程 ·海文考研英语课程
·北大企业管理高级研修班 ·清华企业领导人研修班
·中美高中生交换项目 ·北工大中加学院2+2本科
·劳动和社会保障部物流师 ·物业管理师职业培训
·市场营销经理国际资格 ·现场管理实务培训
清华大学留学
中法管理硕士预科班
课程咨询热线:010-51268840 51268841
 最新新闻
·律师评"玫琳凯礼单"事件 倡建公务员财产申报
·贵阳禁止公务员赴饮用水源保护区游玩
·重庆市08公招公务员笔试成绩及有关事宜公告
·贵州省实施考核新规公务员连续两年不称职 辞退
·上海对公务员“革薪”值得老百姓期待
·全国首个限价房项目售罄 买家以公务员教师为主
·首都青年公务员 风采大赛昨颁奖
·湖南省长力主行政程序统一 拒绝公务员办事推诿
· 50万公务员轻松家装 5月3日嘉禾公务员家居节
·公务员“调薪风暴”不应脱离人大监督
 育路社区            进入>>
 
学员报名服务中心: 北京北三环西路32号恒润中心1806(交通位置图
咨询电话:北京- 010-51268840/41 传真:010-51418040 上海-021-64392659、64397431
育路网-中国新锐教育社区: 北京站 | 上海站 | 郑州站| 武汉站
本站法律顾问: 邱清荣律师
北京育路互联科技有限公司版权所有 | 京ICP备05012189号