单选题
下列过程的功能是:将输入的整数分解为质数的乘积。例如,输入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
【答案解析】解析:本题要求输入一个整数分解为质数的乘积,如: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选项正确。