首页>计算机>软件水平考试>历年真题>正文
2004年上半年程序员下午试题及答案

www.zige365.com 2007-7-19 17:43:41 点击:发送给好友 和学友门交流一下 收藏到我的会员中心

  (5)若有语句 Tmpval=MsgBox(非法操作!,ybOKCancel+vbCritical,"提示"),请简要描述程序运行时弹出的消息框的主要特征。

  从下列的2道试题(试题四至试题五)中任选1道解答,如果解答的试题数超过1道,则题号小的1道解咎有效。

试题四

  阅读以下说明和C代码,将应填入__(n)__处的字句写在答题纸的对应栏内。
[说明]
  函数 MultibaseOutput(long n,int B)的功能是:将一个无符号十进制整数 n 转换成 B(2≤B≤16)进制数并输出。该函数先将转换过程中得到的各位数字入栈,转换结束后再把 B 进制数从栈中输出。有关栈操作的诸函数功能见相应函数中的注释。C代码中的符号常量及栈的类型定义如下:
 #define KAXSIZE 32
 typedef struct{
  int *elem;  /* 栈的存储区 */
  int max;   /* 栈的容量,即找中最多能存放的元素个数 */
  int top;   /* 栈顶指针 */ 
 }Stack;
[C代码]
 int lnitStack(Stack *S,int n)  /* 创建容量为n的空栈 */
 { S->elem = (int *)matloc(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 (init Stack(&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("Kd",m);  /* 小于10,输出数字 */
   else printf("%c,m + 55);    /* 大于或等于10,输出相应的字符 */
  }
  printf("\n");
 }

试题五

  阅读以下应用说明及Visual Basic程序代码,将应填入__(n)__处的字句写在答题纸的对应栏内。
[应用说明5.1]
  本应用程序的窗体中有一个下拉式列表框(名称为Combol)和两个文本框(名称分别为Txtl和Txt2)。运行时,用户从Combol的列表中进行选择,程序就会将选中条目的内容以及编号(从0开始)分别在文本框 Txt1 和 Txt2 中显示出来。
[程序代码5.1]
 Private Sub Combol_C1ick()
  Txtl.Text = Combol.__(1)__
  Txt2.Text = Combol.__(2)__
 End Sub
  (注:可供(2)处选择的选项:List,Index,Listlndex,ListCount,Number)
[应用说明5.2]
  本应用程序的运行窗口如下图所示:

  当用户在输入框(名为Txtln)中输入数值数据,并从下拉式列表框(名为CmbOp)中选择所需的运算后,输出框(名为TxtOut)中就会显示运算的结果。用户单击“清除”按钮(名为CmdClear)后,输入框和输出框都清空。
开发该应用的部分程序代码如下:
[程序代码5.2]
 Private Sub CmbOp_Click()
  Dim DataIn As Double,DataOut as Double
  DataIn = __(3)__
  Select Case __(4)__
   Case "取整数部分"
    DataOut = Int(Dataln)
   Case "求平方根"
    If Dataln < O Then
     MsgBox$("负数不能开平方!")
    Else
     DataOut = Sqr(Dataln)
    End If
   Case "取绝对值"
    DataOut = Abs(Dataln)
    (TxtOut.Text = str$(DataOut)

本新闻共5页,当前在第2页  1  2  3  4  5  

我要投稿 新闻来源: 编辑: 作者:
相关新闻