题目

罗马数字是阿拉伯数字传人之前使用的一种数码。罗马数字采用七个罗马字母作数字,即I(1)、X(10)、C(100)、M(1000)、V(5)、L(50)、D(500)。记数的方法如下: ①相同的数字连写,所表示的数等于这些数字相加得到的数,如Ⅲ=3; ②小的数字在大的数字的右边,所表示的数等于这些数字相加得到的数,如Ⅷ=8、XⅡ=12; ③小的数字(限于Ⅰ、X和C)在大的数字的左边,所表示的数等于大数减小数得到的数,如Ⅳ=4、Ⅸ=9; 王老师设计了一个将罗马数字转换成阿拉伯数字的程序,实现该功能的程序代码如下: Private Sub Command1_Click() Dim a(1 To 10)As String Dim b(0 To 10)As Integer Dim x As String,c As Integer,j As Integer x=Text 1.Text j=Len(x) b(0)= 0 c=0 For i=1 To j    a(i)= Mid(x,j-i+1,1)    b(i)=zh(a(i))    If  ①  Then      c=c-b(i)    Else      c=c+b(i)    End If Next i Label2.Caption="结果:"+Str(c) End Sub Function zh(xAs String)As Integer s="IVXLCDM" zh=1 For i=1 To 7   If  Then     Exit For   Elself  ②  Then     zh=zh*5   Else     zh=zh*2   End If Next i End Function (1) 程序界面如图所示,程序中共包含个对象。 (2) 加框处代码有错,应改为。 (3) 为完善程序,在划线处填入合适的代码。 ①② (4) 罗马数字MCMLXXX转换成阿拉伯数字为。 答案: 【1】5 【1】x=Mid(s,i,1) 【1】b(i)<b(i-1)And(a(i)="I"Or a(i)="X" Or a(i)="C")【2】i Mod 2=1 【1】1980
信息技术 试题推荐