[2004年软中华价格]2004年11月软考模拟试题(程序员下午试题)(2)

计算机技术 2020-12-31 网络整理 可可

【shitiku.jxxyjl.com--计算机技术】

试题五 下题是一个“加法计算器”应用程序,其界面及运行情况如下,请填空。在该界面中,“被加数”、“加数”以及“和数”等文字称为标签(Label),相应的三个输入输出数据框称为文本框(TextBox),此外还有三个命令按钮(CommandButton)。用户在被加数和加数相应的文本框内输入数据,再单击“加法”按钮,便能在“和数”对应的框中看到相加的结果。当用户单击“清除”按钮时,就会清除各文本框中的数据。当用户单击“关闭”按钮时就会关闭该窗口并退出应用程序。在文本框中输入数据时,用户可以进行一般的插入、修改和删除操作。

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

    对象        属性名      属性值   

    窗体       (名称)     frmAdder

               Caption      (1)  

    标签1      Caption      被加数

    标签2      Caption      加数

    标签3      Caption      和数     

    文本框1   (名称)      txt1

                Text        (空)

    文本框2    (名称)       txt2

                Text        (空)

    文本框3   (名称)      txt3

                Text        )    

    按钮1      (名称)          (2) 

                Caption       加法

    按钮2     (名称)      cmdClear

                Caption      清除

    按钮3     (名称)      cmdClose

                Caption      关闭

    为该窗体中各个命令按钮的单击事件编写程序代码:

    Private Sub cmdAdd_Click()

       txt3.text=Str$(  (3)  )   "加法运算获得和数

    End Sub

    Private Sub  (4)  ()

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

       txt2.Text=""

       txt3.Text=""

    End Sub

    Private Sub cmdClose_Click()

         (5)                               "退出应用程序

    End Sub

 

 

试题六  (试题六和试题七选做一题)

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

[程序说明]

本程序从正文文件text.in中读入一篇英文短文,统计该短文中不同单词及出现次数,并按词典编辑顺序将单词及出现次数输出到正文文件word.out中。

程序用一棵有序二叉树存储这些单词及其出现的次数,边读入边建立,然后中序遍历该二叉树,将遍历经过的二叉树上的结点的内容输出。

# include <stdio.h>

# include <malloc.h>

# include <ctype.h>

# include <string.h>

# define   INF        "text.in"

# define   OUTF     "word.out"

typedef struct treenode {

       char *word;

       int    count;

       struct treenode *left, *right;

} BNODE;

int getword(FILE *fpt, char *word)

{     char c;

       c=fgetc(fpt);

       if ( c == EOF)

              return 0;

       while(!(tolower(c) >= "a" && tolower(c) <= "z"))

       {     c=fgetc(fpt);

              if ( c == EOF)

                     return 0;

       }  /* 跳过单词间的所有非字母字符 */

       while(tolower(c) >= "a" && tolower(c) <= "z")

       {     *word++ = c;

              c = fgetc(fpt);

       }

       *word = "\0";

       return 1;

}

void binary_tree(BNODE **t, char *word)

{     BNODE   *ptr, *p; int compres;

       p = NULL;   (1)  ;

       while (ptr)  /* 寻找插入位置 */

       {     compres=strcmp(word,   (2)   ); /* 保存当前比较结果 */

              if (!compres)

              {      (3)  ;  return; }

              else

              {       (4)  ;

                     ptr = compres>0 ? ptr->right : ptr->left;

              }

       }

       ptr = (BNODE *)malloc(sizeof(BNODE));

       ptr->left = ptr->right = NULL;

       ptr->word = (char *)malloc(strlen(word)+1);

       strcpy(ptr->word, word);

       ptr->count = 1;

       if (p == NULL)

                (5)  ;

       else if (compres > 0)

              p->right = ptr;

       else

              p->left = ptr;

}

void midorder(FILE *fpt, BNODE *t)

{     if ( t == NULL )

              return;

       midorder(fpt, t->left);

       fprintf(fpt, "%s %d\n", t->word, t->count);

       midorder(fpt, t->right);

}

void main()

{     FILE       *fpt;  char word[40];

       BNODE   *root=NULL;

       if ((fpt=fopen(INF, "r")) == NULL)

       {     printf("Can"t open file %s\n", INF);

              return;

       }

       while(getword(fpt, word) == 1)

              binary_tree( &root, word );

       fclose(fpt);

       fpt = fopen(OUTF, "w");

       if (fpt == NULL)

       {     printf("Can"t open file %s\n", OUTF);

              return;

       }

       midorder(fpt, root);

       fclose(fpt);

}

  

试题七

某单位职工情况数据库名为emp.mdb,其中含有一个数据表person,其表结构如下:

       字段名    数据类型     大小    缺省值    是否允许空值

       编号       Text         6      2004000        否  

       姓名       Text         8                     是

       工资       Real                               是

    现需要用VB开发一个应用程序,运行该应用程序就能够访问数据库emp.mdb,进行所需的数据库操作。用VB开发能访问数据库的应用程序,我们用两种方法实现。

1、利用“数据窗体设计器”自动生成数据窗体

设计步骤如下:

(1)          先利用VB中的可视化数据库管理器创建数据库emp.mdb以及其中的数据表person,输入数据内容。

(2)          在打开数据库emp.mdb的情况下(出现数据库窗口和SQL语句窗口),利用菜单“   (1)  ”,打开数据窗体设计器,填写窗体名称(如:职工情况表)、 (2)  (如:person);并利用中间的按钮,将左边的3个字段名全部移动右边;

(3)          利用“生成窗体”按钮生成数据窗体“frm职工情况表”。运行该窗体就能看到图10.11的界面。此时,用户非常容易进行各种数据操作。

2、利用数据控件访问数据库

   生成如下图所示的窗口。窗口下部有数据控件(命名为dataP),通过其左右各2个箭头可浏览上节创建的数据库emp中表person的各个记录,将其显示在各个文本框内。各个按钮可分别进行相应的数据记录操作。为使数据控件dataP与数据库emp中的表person相连接,需要设置dataP的属性如下:

      属性名         属性值             说     明                        

      connect        Access     默认连接的数据库类型为Access

        (3)          emp        设置所需连接的数据库

    RecordSource      (4)     设置所需连接的数据源(表名,或SQL语句字符串)

    为使文本框与数据控件dataP相连接,并指明所需显示的字段名,需要设置文本框的如下属性:

      属性名         属性值             说     明         

        (5)          dataP        设置所需连接的数据控件

DataField        字段名       设置所需连接的数据表字段名


本文来源:https://shitiku.jxxyjl.com/jisuanjijishu/494.html

Copyright @ 2011- 考试题库网 All Rights Reserved. 版权所有

免责声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。

 站长统计