软件水平考试(初级)程序员下午(应用技术)模拟试卷8

0
收藏   分享
  • 卷面总分:75分
  • 试卷类型:模拟考试
  • 测试费用:免费
  • 答案解析:是
  • 练习次数:48次
  • 作答时间:150分钟
试卷简介
试卷预览
1

阅读以下说明和Java代码,将应填入(n)处的字句写在对应栏内【说明】

 编写字符界面的Application程序,接收依次输入的10个整型数据,每个数据一行,将这些数据按升序排序后从系统的标准输出设备输出。

 【Java代码】

 import java.iO.*;

   import java.util.* ;

   public class compositor

   {

   public static void main ( String args[] )

   {

     final int NUMBER=10;

     Vector dataVector=new Vector ();

     try

     {

    BufferedReader br=new BufferedReader (

    (1) InputStreamReader ( System.in ));

   System.out.println ("请输入"+NUMBER+"个整数");

   for (int i=0; i<NUMBER; i++ )

   {

     int temp=Integer.parselnt ( br.(2));

     int low=0, high=i-1, mid=0;

     while ((3))

     {

        System.out.println ( low+","+mid+","+high );

        (4);

        if ((( Integer ) dataVectOr.get( mid )) .intValue () ==temp )

        {

          data Vector.insertElementAt ( new Integer ( temp ), mid );

          break;

        }

          else if ((( Integer ) dataVector.get ( mid )) .intValue ( ) >temp )

        {

          high=mid-1;

        }

        else

        {

         (5);

        }

    }

    if ( low>high )

    {

      dataVector, insertElementAt ( new Integer ( temp ), iow );

    }

   }

     //输出

   System.out.println ( "\n升序的排序结果为; ");

   for (int i=0; i<NUMBER; i++ )

   {

     System.out.print ( dataVector.get( i ) .toString () +"\t" );

   }

 }

 catch ( NumberFormatException nfe)

 {

   System.out.println ( nfe.toString ());

   System.out.println ( "整数格式输入错误。");

 }

 catch ( IOException ioe )

      {

       System.out.println ( ioe.toString ());

     }

   } 

 }

1

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

【说明】

 在一些应用场合中,需要对用户的输入数据进行检查监控。以下VisualBasic程序实现了对新添加到 List列表的内容进行监控,拒绝向List列表添加重复信息。例如,在List列表中存在元素“a01001;a01002”,如果用户输入数据为“a01001”或“a01002”,系统则弹出提示信息,拒绝将新数据加入List列表;如果用户输入的数据不同于List列表中的任何一个元素,则作为新元素加入List中。VisualBasic界面显示如图所示。根据程序功能说明,完成程序代码。

                     

 【代码5-1】

 Begin VB.Form. Forml

   Caption   = "List 列表拒绝添加重复信息"

    //...窗体描述(略)

   Begin VB.CommandButton Command2

     Caption    = "退出"

    //...窗体描述(略)

   End

   Begin VB.CommandButton Commandl

     Caption    = "添加"

    //...窗体描述(略)

   End

   Begin VB.TextBox Text1

 //...窗体描述(略)

   End

   Begin VB.ListBox List1

     Height     = 1860

     ItemData    = "Form1.fix": 0000

     Left      = 1020

     List      = "Form1.fix": 0002

     TabIndex    = 0

     Top      = 525

     Width     = 2580

   End

   Begin VB.Labe1 Labe11

     BackStyle   = 0 'Transparent

      Caption   = "请输入编号"

   //...窗体描述(略)

     End

 End

 【代码5-2】

 Attribute VB Name = "Form1"

 Attribute VB_GlobalNameSpace = False

 Attribute VB Creatable = False

 Attribute VB PredeclaredId = True

 Attribute VB_Exposed = False

 Private Sub Form. Load ()

  List1.AddItem "a01001"

  List1.AddItem "a01002"

 End Sub

 Private Sub Cormnand1 Click ()

  Dim Myval As Long

  For i=0 To (1) 

      (2) 

    If (3) Then

      MsgBox "系统不允许重复输入,请重新输入"

      Exit Sub

    End If

  (4) 

  (5) 

 End Sub

1

阅读下列算法说明和算法,将应填入(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),转向第二步

 若E<ENG(K),则K-1→(1);若E>ENG(K),则K+1→(2) 

 4.若H<L则

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

 ENG(I)→ENG(I+1)

 CN(I)→CN(I+1)

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

 否则,转向(5) 

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