利用穷举法编写一个算法判断给定的正整数n是否是素数,即判断n是否只能被1和自身整除。
第1题:
下列程序的功能是输入一个整数,判断是否是素数,若为素数输出1,否则输出0,请填空。
main()
{int i, x, y=1;
scanf("%d", &x);
for(i=2; i<=x/2; i++)
if【14】{ y=0; break;}
printf("%d\n", y);
}
第2题:
设有宏定义:#define IsDIV(k,n) ((k%n=1)?1:0)且变量m已正确定义并赋值,则宏调用: IsDIV(m,5)&&IsDIV(m,7)为真时所要表达的是______。
A.判断m是否能被5或7整除
B.判断m是否能被5和7整除
C.判断m或者7整除是否余1
D.判断m被5和7整除是否都余1
第3题:
设有宏定义 :#define IsDIV(k,n) ((k%n==1)?1:0) 且变量 m 已正确定义并赋值 ,则宏调用 :IsDIV(m,5)&&IsDIV(m,7) 为真时所要表达的是
A) 判断 m 是否能被 5 或者 7 整除
B) 判断 m 是否能被 5 和 7 整除
C) 判断 m 被 5 或者 7 整除是否余 1
D) 判断 m 被 5 和 7 整除是否都余 1
第4题:
设有宏定义:
define IsDIV(k,n)((k%1"1==1)?1:O)且变量m已正确定义并赋值,则宏调用:
IsDIV(m,5)&&;IsDIV(m,7)为真时所要表达的是( )。
A.判断m是否能被5和7整除
B.判断m被5和7整除是否都余l
C.判断m被5或者7整除是否余1
D.判断m是否能被5或者7整除
第5题:
设有宏定义“#definelsDIV(k,n)((k%n==1?1:0)”且变量m已正确定义并赋值,则宏调用“lsDIV(m,5)&&IsDIV(m,7)”为真时所要表达的是( )。
A.判断m是否能被5或者7整除
B.判断m是甭能被5和7整除
C.判断m被5或者7整除是否余1
D.判断m被5和7整除是否都余l
第6题:
第7题:
在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,然后编写如下事件过程: Private Sub Command1_Click( ) n=Val(Text1.Text) For i=2 To n Forj =2 To Sqr(i) If i Mod j=0 Then Exit For Next j lf j>Sqr(i) Then Print i Next i End Sub 该事件过程的功能是
A.输出n以内的奇数
B.输出n以内的偶数
C.输出n以内的素数
D.输出n以内能被j整除的数
第8题:
在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,然后编写如下事件过程:Private Sub Command1_Click() n = Val (Text1.Text) For i = 2 To n For j = 2 To Sqr(i) If i Mod j = 0 Then Exit For Next j If j > Sqr (i) Then Print i Next iEnd Sub 该事件过程的功能是。A.输出n以内的奇数B.输出n以内的偶数C.输出n以内的素数D.输出n以内能被j整除的数
第9题:
素数的求法
A.小范围内判断一个数是否为质数:
function prime (n: integer): Boolean;
var I: integer;
begin
for I:=2 to trunc(sqrt(n)) do
if n mod I=0 then begin
prime:=false; exit;
end;
prime:=true;
end;
第10题:
阅读以下说明和C函数,填补代码中的空缺(1)~(5),将解答填入答题纸的对应栏内。
【说明1】 函数isPrime(int n)的功能是判断n是否为素数。若是,则返回1,否则返回0。素数是只能被1和自己整除的正整数。例如,最小的5个素数是2,3,5,7,11。 【C函数】 int isPrime (int n) { int k, t; if (n==2) return 1; if(n<2|| (1) ) return 0; /* 小于2的数或大于2的偶数不是素数 */ t=(int)sqrt(n)+1; for (k=3; k<t; k+=2) if ( (2) ) return 0; return 1; } 【说明2】 函数int minOne(int arr[], int k)的功能是用递归方法求指定数组中前k个元素中的最小者,并作为函数值返回。 【C函数】 int minOne (int arr[], int k) { int t; assert (k>0) ; if(k==1) return (3) ; t=minOne(arr+1, (4) ; if (arr[0]<t) return arr[0]; return (5) ; }