下列过程的功能是:将输入的整数分解为质数的乘积。例如,输入50,则输出2,5,5,,输入100,则输出2,2,5,5,。 Private Sub Command1_Click() x=Vat(InputBox(’’请输入一个整数’’))

admin2021-06-03  28

问题 下列过程的功能是:将输入的整数分解为质数的乘积。例如,输入50,则输出2,5,5,,输入100,则输出2,2,5,5,。
    Private Sub Command1_Click()
    x=Vat(InputBox(’’请输入一个整数’’))
    out $=’’’’
    y=2
    Do While y<=x
    If x Mod y=0 Then
    out$=out$ & y &’’,’’
    x=【】
    Else
    y=y+1
    End If
    Loop
    MsgBox out $
    End Sub
    为实现指定功能,程序【】处应填写的语句是(    )。

选项 A、x/y
B、xmody
C、x+1
D、x*y

答案A

解析 本题要求输入一个整数分解为质数的乘积,如:50分解为2、5、5。质数是指只能破1和它奉身整除的数,最小的质数为2。
    1)初始化:y=2,x=50;
    2)Do while y<=x;第一次循环判断2<=50正确
    3)if x mod y=0;判断50 mod 2==0正确
    4)执行out$=out $ &y&’’,’’;x=x/y;该条执行后out $=2.x=25
    5)Do while y<=x;第二次循环判断2<=25正确
    6)if x mod y=0;判断25 mod 2==0不正确
    7)y=y+1 y=3;(执行ELSE部分)
    8)Do while y<=x;第三次循环判断3<=25正确
    9)if x mod y=0;判断25 mod 3==0不正确
    10)y=y+1 y=4;(执行ELSE部分)
    11)Do while y<=x;第四次循环判断4<=25正确
    12)if x mod y=0;判断25 mod 4==0不正确
    13)y=y+1 y=5;(执行ELSE部分)
    14)Do while y<=x;第五次循环判断5<=25正确
    15)if x mod y=0;判断25 mod 5==0正确
    16)执行out$=0ut$&y&’’,’’;x=x/y;该条执行后out$=2,5,x=5
    17)Do while y<=x;第六次循环判断5<=5正确
    18)if x mod y=0;判断5 mod 5==0正确
    19)执行out$=out$&y&’’,’’;x=x/y;该条执行后0ut$=2,5,5 x=1
    20)Do while y<=x;第七次循环判断5<=1不正确
    21)结束循环
    程序中的【】位置应该填入x/y,然后将值赋给x,故本题A选项正确。
转载请注明原文地址:https://kaotiyun.com/show/W4Sp777K
0

最新回复(0)