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

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

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

[说明]

 本程序的功能是给公司的员工Tom,Jack,Green增加薪水。三人的职位分别是programmer, Manager,CEO。

 程序由6个类组成:WorkerTest是主类,programmer,Manager,CEO三个类,薪水增加的规则是 programmer的涨幅是5%;Manager的是10%;CEO也是Manager,但是它除了有Manager的涨幅,还有1000元的bonus。接口SalaryRaise提供了一个增加薪水的方法raise()。

[java程序]

public class WorkerTest {

public WorkerTest( ) {}

public static void main( String[] args) {

  Programmer programmer = new Programmer( "Tom" ,3000);

  Manager manager = new Manager( "Jack" ,4000);

  CEO ceo = new CEO( "Green" ,4000);

  Worker [] worker = new Worker[3];

  programmer, raise( );

  manager, raise( );

  ceo. raise( );

  worker[0] = programmer;

  worker [1] = manager;

  worker[2] = ceo;

  for ( int i = 0 ;i < worker, length; i + + ) {

   System. out. prinfln (" Name:" + worker [i]. getName ( ) +" \ tSalary:" + worker [i]. getSalary ());

public interface SalaryRaise { void raise( ); }

public class Worker {

public String name;

public double (1);

public Worker( ) {}

public String getName( ) {return name;}

public void setName( String name) {this. name = name;}

public double getSalary( ) {return salary;}

 public void setSalary(double salary) { this. salary = salary; }

}

public class Programmer extends Worker implements (2) {

 public Programmer( ) {}

 public void raise( ) {

  double pets=0.05;

  double sala = this. getSalary( ) * (1 + pers);

  this. setSalary (sala);

public Programmer( Siring name, double salary) t

  this. name = name;

  this. salary = salary;

public class Manager extends (3) implements SalaryRaise {

public Manager( ) { }

public Manager(String name, double salary) {

  this. name = name;

  this. salary = salary;

}

public void raise( ) {

  double pets = 0.1;

  double sala = this. getSalary() * (1 + pers);

  this. setSalary(sala);

}

}

public class CEO extends Manager implements SalaryRaise {

public CEO() {}

public CEO( String name,double salary) {

  this. name = name;

  this. salary = salary;

 }

public void raise( ) {

  double bonus = 1000;

  (4);

  double sala = this. getSalary( );

  (5);

  this. setSalary(sala);

}

}

1

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

[说明]

 下图是一个简易文本编辑器程序的运行界面:

用户打开磁盘上的某个文件后,可以直接对文本进行编辑,也可以利用界面提供的按钮完成相应操作。主要操作介绍如下:

 (1)打开文件:打开文件对话框,其中仅显示“*.txt”类型的文件。用户选中某一文件后,其内容将呈现于界面文本框内;

 (2)查找:提示用户输入要查找的内容,将首次出现的查找内容以蓝色高亮标记;

 (3)替换:若文本框中已选中某段文本,则提示用户输入要替换的内容,在文本框中完成替换。

 在开发过程中,文本框名为Text1,“打开文件”、“保存文件”、“查找”、“替换”、“退出”按钮分别命名为Command1至Command5。

[Visual Basic代码]

Dim fileName As String

Dim fso As New (1), ts As Object

’打开文本文件

Private Sub Command1_Click()

 CommonDialog1.Filter = "*.txt"

 CommonDialog1.ShowOpen

 fileName =(2)    ’保存所打开的文件名

 Set fso=CreateObjeet("Scripting.FileSystemObject")

 Set ts=fso.OpenTextFile(fileName, ForReading)

 If Not ts.AtEndOfStream Then

 Text1.Text =(3) 

 End If

 ts. Close

End Sub

’保存文本文件

Private Sub Command2_Click()

  Set ts = fso.OpenTextFile(fileName, ForWriting)

  (4) 

  ts.Close

End Sub

’查找字符串

Private Sub Command3_Cliek()

 Dim search As String, position As Integer

 search = InputBox("输入要查找的字符串:")

 position = InStr(Text1.Text, search)  ’在文本中查找字符串

 If position >0 Then          ’若找到指定的字符串

    Text1.SelStart = position - 1  ’设置选定文本的起始位置

    Text1.SelLength = Len(search)  ’设置选定文本的长度

 Else

    MsgBox "没有发现要查找的字符串"

 End If

End Sub

’替换选中的字符串

Private Sub Command4_Click()

  Dim object As String

  If (5) >0 Then           ’若已经选中了要替换的文本

  object = InputBox("输入要替换的字符串:")

  Text1.SelText = object        ’替换文本

  Else

  MsgBox "请先选中要替换的文本!"

  End If

End Sub

’退出程序

Private Sub Command5_Click()

 End

End Sub

1

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

[说明]

 某银行新近开通外汇定期存款业务。为方便用户查询不同存款方式下的日利率、计算本利,特开发了日利率查询及本利计算程序,其运行窗口如下图所示。用户只要在界面上选择相应的存款方式(包括外汇币种、存期等),便可单击按钮一查询存款日利率。若输入一定数量的本金。程序还会根据所选择的存期计算并输出本利和。

    

 在开发过程中,选择币种和存期的组合框(ComboBox)名分别为Combo1和Combo2,单旋钮 (CommandButton)“个人单位”和“金融机构”分别名为Option1和Option2,用于输入本金的文本框 (TextBox)名为Price,“输出日利率”和“计算本利和”按钮(CommandButton)分别名为Command1和 Command2。且已知,第i类币种、第j类存期之下,个人单位与金融机构的存款日利率分别存放于数组元素interestRate(i,j,0)和interestRate(i,j,1)中,其中i,j从0开始计数。

[Visual Basic代码]

Dim interestBate(50,10,2) As Single ’通用声明

Private Sub Form_Load()

  ……       ’为数组interestRate赋初值

End Sub

’根据所选择的币种、存期等信息确定日利率

Function getInterestRate()

  Dim strCurrency, strTime As String, i, j, k, intDays As Integer

  strCurrency = Combo1.Text

  strTime = Combo2.Text

  For i = 0 To Combol. ListCount - 1

    If Combol.List(i) = strCurrency Then (1) 

  Next

  For j = 0 To Combo2.ListCount - 1

    IfCombo2.List(j) = strTime Then (1) 

  Next

  If (2)=True Then

    k=0

  Else: k=1

  End If

  (3)= interestRate(i, j, k)

End Function

’输出日利率

Private Sub Commund1_Click()

 MsgBox "日利率为" & getInterestRate()

End Sub

’输出本利和

Private Sub Command2_Click()

  Dim strTime As String, intDays As Integer, sngCorpus, sngResult As Single

  strTime = Combo2. Text

  sngCorpus = CSng(Text1.Text)

  (4) ’计算存款天数(以每月30天计)

  Case "一个月" :intDays = 30

  Case "三个月" :intDays = 90

  Case "六个月" :intDays = 120

  End Select

  ’计算并输出本利和

  sngResult = sngCorpus +(5) 

  MsgBox "本利之和为:" & sngResult

End Sub