判断一个数是否为素数。并显示相应提示。如:该数为素数时,显示"素数";该数为非素数时,显示"非素数"。要求使用For语句来实现,用布尔型变量flag作为该数是否为素数的标志,注意:不得使用Goto语句.
Private Sub Command1_Click()
Dim flag As Boolean , m As Integer
m = Val(InputBox("n:"))
flag = True
For i = 2 To m - 1
If m Mod i = 0 Then 【1】 : Exit For
Next i
If flag = True Then
Print "素数"
Else
Print "非素数"
End If
End Sub
Private Sub Command1_Click()
Dim flag As Boolean , m As Integer
m = Val(InputBox("n:"))
flag = True
For i = 2 To m - 1
If m Mod i = 0 Then 【1】 : Exit For
Next i
If flag = True Then
Print "素数"
Else
Print "非素数"
End If
End Sub
举一反三
- 3.输入一个正整数m(>2),判断m是否为素数,并输出结果。请将程序补充完整。 Private Sub Form_Click() Dim m%, i%, k% m = InputBox("请输入m的值(>2)") k = 1 For i = 【1】To【2】 If 【3】 Then k = 0 Next i If 【4】 Then Print m & "是素数" Else Print m & "不是素数" End If End Sub
- 【程序设计】从键盘输入一个大于3的整数,调用函数fun判断其是否素数,然后在main函数中输出相应的结论信息。例如:7是素数,8不是素数。请编写fun函数。素数是仅能被1和自身整除的数。 #include int fun(int n) { int i,j; j=1; ________ { ________ } ________ } void main() //缺少void,补充 { int m,flag; printf("input an integer:"); scanf("%d",&m); flag=fun(m); //调用fun函数后将返回值赋给flag if(flag) printf("%d is a prime. ",m); //如果flag为真(flag=1),则n是素数 else printf("%d is not a prime. ",m); //如果flag为假(flag=0),则n不是素数 }
- 下面( )是正确的判断素数程序(m>1)。 A: j=0;for (i =2; i<=m-1; i++) if ( m % i != 0) j++;if(j==m-2) printf(“%d是素数\n", m); B: j=0;for (i =2; i<=m-1; i++) if ( m % i == 0) j++;if(j==0) printf(“%d是素数\n", m); C: flag=0;for (i =2; i<=m-1; i++) if ( m % i == 0) flag=1;if(flag==0) printf(“%d是素数\n", m); D: for (i =2; i<=m-1; i++) if ( m % i == 0) i=m+2;if(i==m+3) printf(“%d是素数\n", m);
- 下面( )是正确的判断素数程序(m>1)。 A: j=0; for (i =2; i<=m-1; i++) if ( m % i==0) j++; if(j==0)printf(“%d是素数\n", m); B: j=0; for(i =2; i<=m-1; i++) if ( m % i != 0) j++; if(j==m-2)printf(“%d是素数\n", m); C: for (i =2; i<=m-1; i++)<br> if ( m % i==0) i=m+2; if(i==m+3)printf(“%d是素数\n", m); D: flag=0; for (i =2; i<=m-1; i++) if ( m % i==0) flag=1; if(flag==0)printf(“%d是素数\n", m);
- 题目内容:要求定义函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。