中华网通行证
用户名 密码
  科技动态 硬件广场 下载基地 网络教室 网络冲浪 科学博览 移动时代 手机上网 桌面壁纸 科技商情  

计算机等级考试二级上机指南(上)

陈智罡 2000-10-24 11:32:41

  二级五种语言上机环境
    软件环境
    操作系统:MS-DOS5.0以上
    汉字系统:希望汉字系统(UCDOS)3.1 或5.0
    全屏幕编辑系统:EDIT、PE2、QEDIT
  BASIC语言:QBASIC或Turbo-Basic或Quick-BASIC
  FORTRAN语言:Fortran77
  PASCAL语言 :Turbo-Pascal5.0以上
  C 语言: Turbo-C2.0以上
  FoxBASE语言:FoxBase2.1(中文版)

  考试内容
  二级考试的上机内容由DOS命令操作、程序修改及程序设计三部分组成。
  二级考试上机考试的时间为60分钟,其内容如下:
  1、操作系统部分30分,6条DOS操作命令题目。
  2、程序修改部分30分,修改指定程序MODI.PRG中的三个或三类错误。
  3、程序设计部分40分,根据题目要求编制PROGI.PRG程序。
  上述三部分中,操作系统部分与一级考试相同,比较容易,考生一般不会在这部分出现差错,其他两部分内容相对较难,考生应仔细阅读题目要求。

  二级上机试题分析
  1、DOS 命令操作题
  (1)将考生目录下的TCYCX\TSR目录中的MOVE子目录删除。
  (2)将考生目录下APPLE\CUABC子目录中的文件README.DOC更名为README.TXT。
  (3)将考生目录下L\M子目录中的文件A1.BAT删除。
  (4)在考生目录下UNIX\GROUP子目录中建立一个新的子目录L。
  (5)取消考生目录下P\P子目录中文件PERSON.PAS的隐含属性。
  (6)将考生目录下SAVE子目录中的文件HEAD.TXT和考生目录下CHECK子目录中的文件SEARCH.DAT顺序合并拷贝到考生目录下的PCS子目录中, 文件名为BASE.OUT。
  参考答案:
  1、deltree tcycx\tsr\move
  2、ren apple\cuabc\readme.doc readme.txt
  3、del l\m\a1.bat
  4、md unix\group\l
  5、attrib–h p\p\person.pas
  6、copy save\head.txt+check\search.dat pcs\base.out
  分析:使用DOS命令一方面要清楚命令的名字,另一方面要清楚路径,操作时尽量使用相对路径,可节省时间。

  2、程序修改题 要求修改给定程序中的错误,错误均出现在星号行的下一行。每题后均附有正确答案。
  C语言部分:
  试题说明:给定程序MODI1.C中函数 fun 的功能是:将s所指字符串的正序和反序进行连接,形成一个新串放在t所指的数组中。
  例如,当s串为“ABCD”时,则t串中的内容应为“ABCDDCBA”。请改正函数fun中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
  程序:
  #include
  #include
  #include
  /*******found1********/
  void fun (char s, char t)
  { int i, d;
   d = strlen(s);
   for (i = 0; i    for (i = 0; i   /*********found2*********/
   t[2*d-1] = '\0'; }
  main()
  {  char s[100], t[100];
   clrscr();
   printf(″\nPlease enter string S:″); scanf(″%s″, s);
   fun(s, t);
   printf(″\nThe result is: %s\n″, t); }
  答案:
  第一处改为:void fun (char *s, char *t)或fun (char *s, char *t)或void fun(char s[],char t[])或void fun(char *s, char t[])或void fun(char s[], char *t)或fun(char s[], char t[])或fun(char *s, char t[])或fun(char s[], char *t)
  第二处改为:t[2*d] = '\0'或t[2*d] = 0 或t[d*2] = '\0'或t[d*2] = 0或 t[d*2] = '\0'或t[d*2] = 0或t[d+d] = '\0'或t[d+d] = 0。
  分析:指针和数组有密不可分的关系,数组作为实参时,形参即可以是数组也可以是指针,所以第一处的答案有多种选择。'\0'或'\000'是代表ASCII码为0的控制字符,所以t[2*d] = '\0'和t[2*d] = 0有同样的效果。

  FoxBASE语言部分:
  试题说明:给定程序MODII.PRG的功能是:实现四则运算。程序中共有三个错误,请调试修改正确,但不得增加或删减。
  Set talk off
  Store 0 to c
  Do while .t.
  Clear
  @5,20
  input“输入第一个数:”to A
  input “输入第一个数:” to B
  accept “请输入运算符:”to OP
  do case
   case OP= “+”
    store A+B to C
   case OP= “-”
    store A-B to C
   case OP= “*”
    store A*B to C
   case OP= “/”
    store A/B to C
      otherwise
       @7,20 say “运算符错,重新输入”
  *********found1*********
     exit
    endcase
  *********found2*********
  store “A&OPB=” to exp
  ? exp+str(c)
  @20,30 say “是否继续?(y/n)”
  wait “” to go_on
  if upper(go_on)= “Y”
   clear
  else
  **********found3*********
   loop
     endif
    enddo
  clear
  @10,30 say“再见!”
  set talk on
  答案:第一处改为:loop;第二处改为:store “A&OP.B=” to exp;第三处改为:exit
  分析:本程序只能做两个数的加减乘除运算,第一个数存入变量A,第二个数存入变量B,运算符存入变量C,然后通过多分支结构DO CASE 语句判断作何种运算,运算结果存入C中,最后输出运算结果,让用户选择是否进行下一次运算。Loop和exit可在DO WHILE 和ENDDO之间的任何位置,loop表示进行下一次循环,直接跳到DO WHILE进行条件判断,loop后的命令不被执行,exit表示直接从循环体跳出,去执行ENDDO后面的命令。&是宏代换函数,它的作用范围是从符号&起直到遇见一个空格或圆点为止,若这样使用“A&OPB=”,它会把OPB=当成一个变量名进行宏代换,所以会产生错误。(未完待续)

赛迪网
相关报道
计算机等级考试二级上机指南(下) (2000-10-24 11:31:11)




科技检索



中华网推荐

·国家级治脑病新药思维源
·中藏药治疗脑病新突破
·治类风湿,强直性脊柱炎
·养肾·痛风·长寿
·肝病泌尿脑萎缩新药介绍
·强直性脊柱炎康复乐园
·让中医辩证不孕不育
·国医治股骨头坏死一绝
·乙肝为何久治不愈?
·二千元垄断批发做老板
·中医中药专治前列腺
·治牛皮癣白癜风已成现实
·专治痛风病的白衣天使
·不孕不育的杏林奇葩
·专卖店零售管理系统





   

网络教室编辑信箱