試卷征集
加入會(huì)員
操作視頻

我國居民身份證號是由 18 位字符組成,其中前 17 位是數(shù)字,第 18 位是校驗(yàn)位(校驗(yàn)位字符在“0”~“9”或“X”中選?。?。由前 17 位數(shù)字經(jīng)過一定的規(guī)則計(jì)算得到校驗(yàn)值,在查驗(yàn)居民身份證號有效性時(shí),如果校驗(yàn)位中的字符與計(jì)算所得校驗(yàn)值相等則身份證號有效,否則無效。
校驗(yàn)值計(jì)算規(guī)則如下:
第一步:將身份證號前 17位數(shù)字分別乘以不同的系數(shù)后相加,對應(yīng)系數(shù)如下表所示。
位數(shù) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
系數(shù) 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
第二步:將第一步的計(jì)算結(jié)果除以 11,得到余數(shù)。第三步:根據(jù)第二步的計(jì)算結(jié)果從下表獲取對應(yīng)的校驗(yàn)值。
余數(shù) 0 1 2 3 4 5 6 7 8 9 10
校驗(yàn)值 1 0 X 9 8 7 6 5 4 3 2
例如:某身份證號為 34052419800101001X.要計(jì)算此身份證的校驗(yàn)值步驟如下:第一步:計(jì)算 3*7+4*9+0*10+5*5+……+1*2=189
第二步:189 除以 11 得到余數(shù)為 2
第三步:由余數(shù) 2 獲取校驗(yàn)值 X。
根據(jù)以上規(guī)則小王編寫了一個(gè)驗(yàn)證身份證號是否有效的 VB 程序,功能如下:在文本框 Text1 中輸入身份證號,單擊“驗(yàn)證”按鈕 Command1 后,在列表框 List1 中顯示驗(yàn)證結(jié)果。程序運(yùn)行界面如圖 a 所示。
(1)設(shè)計(jì)程序界面時(shí),應(yīng)使用圖 b 中的
(填寫相應(yīng)編號)添加列表框?qū)ο?nbsp;List1。
菁優(yōu)網(wǎng)
(2)實(shí)現(xiàn)上述功能的 VB 程序如下,請?jiān)跈M線處填入合適代碼。
Private Sub Command1_Click (  )
Dim i As Integer,a As Integer,b As Integer,sum As Integer,pos As Integer
Dim idCode As String,result As String
Const xs=“0709100508040201060307091005080402“'存儲前 17 位每位系數(shù)
Const checkCodeStr=“10X98765432“'存儲余數(shù)對應(yīng)的檢驗(yàn)值
idcode=Text1.Text
idcode=Text1.Text

sum=0
For i=1To 17Step 1
a=Val(Mid(idCode,i,1))
b=②
Val(Mid(xs,i*2-1,2))
Val(Mid(xs,i*2-1,2))

sum=sum+a*b
Next i
sum Mod 11
pos=菁優(yōu)網(wǎng)
checkCode=Mid(checkCodeStr,pos,1)
sum Mod 11
sum Mod 11
sum Mod 11
sum Mod 11
sum Mod 11
sum Mod 11
sum Mod 11
sum Mod 11
sum Mod 11
sum Mod 11
If checkCode=Mid(idCode,18,1)Then result=“有效“
Else
result=“無效“
End if
List1.AddItem (idCode &““& result)
End Sub
(3)程序中加框處代碼有誤,應(yīng)修改為
sum Mod 11+1
sum Mod 11+1
。

【考點(diǎn)】編輯事件處理過程的代碼
【答案】③;idcode=Text1.Text;Val(Mid(xs,i*2-1,2));sum Mod 11+1
【解答】
【點(diǎn)評】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/6/27 10:35:59組卷:3引用:1難度:0.4
相似題
  • 1.根據(jù)AQI值判斷城市的空氣質(zhì)量。若城市的AQI值(整數(shù))不超過100則空氣質(zhì)量優(yōu)良,否則空氣質(zhì)量有污染。當(dāng)輸入的AQI值為-1時(shí)則退出程序。不要更改程序結(jié)構(gòu),將題中的①②③④填入正確的語句。
    city=input(“請輸入城市名:”)
    AQI=int(input(“請輸入空氣質(zhì)量指數(shù)AQI的值:”))
    ①______ AQI!=-1:
    if ②______:
    print(city,“的空氣質(zhì)量優(yōu)良?!保?br />③______:
    print(city,“的空氣質(zhì)量有污染?!保?br />city=input(“請輸入城市名:”)
    AQI=④(input(“請輸入空氣質(zhì)量指數(shù)AQI的值:”))
    (1)序號①答案為
     

    A.if
    B.while
    C.for
    D.def
    (2)序號②答案為
     
    。
    A.AQI>=100
    B.AQI<=100
    C.AQI>100
    D.AQI<100
    (3)序號③答案為
     
    。
    A.elif
    B.break
    C.if
    D.else
    (4)序號④答案為
     

    A.int
    B.float
    C.str
    D.else

    發(fā)布:2025/1/2 11:0:1組卷:0引用:0難度:0.4
  • 2.一球從100米高度自由落下,每次落地后反跳回原高度的一半,再下落。編寫一個(gè)C程序,求它在第10次落地時(shí),其經(jīng)過了多少米?第10次反彈多高?

    發(fā)布:2025/1/2 11:0:1組卷:0引用:3難度:0.3
  • 3.利用海倫公式求解三角形面積。已知a,b,c為三角形的三條邊長,p為三角形的半周長,即p=(a+b+c)/2,計(jì)算此三角形面積S的海倫公式為:菁優(yōu)網(wǎng)。不要更改程序結(jié)構(gòu),將題中的①②③填入正確的語句。
    import math#導(dǎo)入數(shù)學(xué)模塊
    def hl(a,b,c):#定義求三角形面積的函數(shù)
    p=①
    s=math.jye.ai(②)#sqrt用于計(jì)算算術(shù)平方根
    return ③#返回面積的值
    a,b,c=3,4,5#邊長依次賦值
    print(“此三角形的面積S為:“,hl(a,b,c))
    (1)序號①答案為
     

    A. (a+b+c)/2                              B.p*(p-a)*(p-b)*(p-c)
    C. (a+b+c)*2                              D.s
    (2)序號②答案為
     

    A.(a+b+c)/2                              B.p*(p-a)*(p-b)*(p-c)
    C.(a+b+c)*2                                D.(3+4+5)/2
    (3)序號③答案為
     

    A.p                                          B.s
    C.p*(p-a)*(p-b)*(p-c)                  D.0

    發(fā)布:2025/1/2 11:0:1組卷:0引用:0難度:0.4
小程序二維碼
把好題分享給你的好友吧~~
APP開發(fā)者:深圳市菁優(yōu)智慧教育股份有限公司| 應(yīng)用名稱:菁優(yōu)網(wǎng) | 應(yīng)用版本:5.0.7 |隱私協(xié)議|第三方SDK|用戶服務(wù)條款
本網(wǎng)部分資源來源于會(huì)員上傳,除本網(wǎng)組織的資源外,版權(quán)歸原作者所有,如有侵犯版權(quán),請立刻和本網(wǎng)聯(lián)系并提供證據(jù),本網(wǎng)將在三個(gè)工作日內(nèi)改正