niusouti.com

从键盘输入整数n,如果n是素数,输出"yes",否则输出"no"。 素数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。

题目

从键盘输入整数n,如果n是素数,输出"yes",否则输出"no"。 素数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。


相似考题
更多“从键盘输入整数n,如果n是素数,输出"yes",否则输出"no"。 素数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。”相关问题
  • 第1题:

    下面程序的功能是从键盘输入—个大于100的整数m,计算并输出满足不等式

    1+22+32+42+…+n2<m

    的最大的n。请填空。

    Private Sub Command1_Click()

    Dim s,m,n As Integer

    m=Val(InputBox("请输入一个大于100的整数"))

    n=【 】

    s=0

    Do While s<m

    n=n+1

    s=s+n*n

    Loop

    Print "满足不等式的最大n是";【 】

    End Sub


    正确答案:0 n-1
    0 , n-1 解析:Do While…Loop是先判断条件表达式的值是否为True,如果为True,则执行循环体,如果为False,则执行Loop后面的语句。由循环体可知该题的第1空应该填0。当循环条件不满足时跳出循环,此时的n是满足不等式1+22+32+42+…+n2>=m的最小的n,所以该题的第2空应该填n-1。

  • 第2题:

    下列程序的输出结果是 main( ) { int i,s=0; for(i=1;i<10;i+=2) s+=i+1; printf(“%d\n”,s); }

    A.自然数1~9的累加和

    B.自然数1~10的累加和

    C.自然数1~9中的奇数之和

    D.自然数1~10中的偶数之和


    正确答案:D
    解析:本题执行过程:
      i  S
      ①i=1  1  s=0+1+1=2
      ②i=i+2  3  s=2+3+1=6
      ③i=i+2  5  s=6+5+1=12
      ④i=i+2  7  s=12+7+1=20
      ⑤i=i+2 9  s=20+9+1=30
      ⑥i=i+2=11>10,循环结束。

  • 第3题:

    请编写函数fun( ),其功能是:将所有大于1小于整数m的素数存入xx所指数组中,素数的个数通过k传回。

    例如,输入25,则应输出2 3 5 7 11 13 17 19 23。

    注意:部分源程序给出如下。

    请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

    试题程序:

    include<conio.h>

    include<stdio.h>

    void fun(int m,int *k,int xx[ ])

    {

    }

    main( )

    {

    int m,n,zz[100];

    clrscr( );

    printf("/nPlease enter an integer number between 10 and 100:");

    scanf("%d",&n);

    fun(n,&m,zz);

    printf("\n\nThere are%d prime numbers

    less than %d:",m,n);

    for(n=0;n<m;n++)

    printf("\n %4d",zz[n]);

    }


    正确答案:void fun(int mint *kint XX[]) { int ijtn=0; for(i=2;im;i++) /*找出大于1小于整数m的素数*/ { t=l; for(j=2;ji;j++) if(i%j==0) { t=0; break; } if(t==1) xx[n++]=i; } *k=n; /*返回素数的个数*/ }
    void fun(int m,int *k,int XX[]) { int i,j,t,n=0; for(i=2;im;i++) /*找出大于1小于整数m的素数*/ { t=l; for(j=2;ji;j++) if(i%j==0) { t=0; break; } if(t==1) xx[n++]=i; } *k=n; /*返回素数的个数*/ } 解析:这道题是考查一个数是不是素数,只要掌握了判断素数的方法,问题便能顺利解决,请以此题为例,掌握判断素数的方法。

  • 第4题:

    下列给定程序中,函数proc()的功能是:判断一个整数m是否是素数,若是返回1,否则返回0。在main()函数中,若proc()返回1,则输出″YES″;若proc()返回0,则输出″NO″!

    请修改程序中的错误,使它能得出正确的结果。

    注意:不要改动main)函数,不得增行或删行,也不得,t更改程序的结构。

    试题程序:


    正确答案:

    (1)错误:k++
    正确:k++;
    (2)错误:if(m=k)
    正确:if(m==k)
    【解析】根据C语言的语法规则,每一条语句都要以分号结束,因此,要在语句“k++”之后加上分号。判断变量m与变量k是否相等应该用符号“==”,符号“=”为赋值符号,因此,“if(m=k)”应改为“if(m==k)”。

  • 第5题:

    阅读以下说明和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) ; }


    正确答案:
    (1)n%2==0,或!(n%2),或其等价形式
    (2)n%k==0,或!(n%k),或其等价形式
    (3)arr[0],或*arr,或其等价形式
    (4)k-1,或其等价形式
    (5)t

  • 第6题:

    阅读以下说明和C函数,填补代码中的空缺,将解答填入答题纸的对应栏内。
    [说明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 || ______)return 0; /*小于2的数或大于2的偶数不是素数// t=(int)Sqrt(n)+1; for(k=3; k<t; k+=2) if(______) return 0; return 1; }

    [说明2]
    函数int minOne(int art[],int k)的功能是用递归方法求指定数组中前k个元素中的最小者,并作为函数值返回。

    [C函数]int minOne(int arr[],int k){int t;assert(k>0);if(k==1)return ______;t=minOne(arr+1,______);if(arr[0]<t)return amr[0];return ______;}


    答案:
    解析:
    n%2==0,或!(n%2),或其等价形式
    n%k==0,或!(n%k),或其等价形式
    arr[0],或*arr,或其等价形式
    k-1,或其等价形式
    t

  • 第7题:

    素数是只能被1和它本身整除的整数,那么下面不是素数的是()。

    • A、13
    • B、15
    • C、27
    • D、34

    正确答案:B,C,D

  • 第8题:

    以下关于素数正确的是()

    • A、素数是大于1的自然数
    • B、素数是只能被1整除的数
    • C、3是素数
    • D、1是素数

    正确答案:C

  • 第9题:

    “有些自然数是奇数,有些自然数是素数,所以,素数都是奇数。”这个三段论()。

    • A、犯了“大项扩大”的错误
    • B、犯了“中项不周延”的错误
    • C、犯了“四概念”的错误
    • D、犯了“小项扩大”的错误

    正确答案:B,D

  • 第10题:

    任何大于1的自然数,都可以表示成有限个素数(可以重复)的乘积,并且如果不计次序的话,表法是唯一的。这是()。

    • A、代数基本定理
    • B、算术基本定理
    • C、素数定理
    • D、潘洛斯阶梯

    正确答案:B

  • 第11题:

    单选题
    以下关于素数正确的是()
    A

    素数是大于1的自然数

    B

    素数是只能被1整除的数

    C

    3是素数

    D

    1是素数


    正确答案: D
    解析: 暂无解析

  • 第12题:

    单选题
    素数是只能被1和它本身整除的是,以下是素数的是()。
    A

    12

    B

    7

    C

    27

    D

    99


    正确答案: D
    解析: 暂无解析

  • 第13题:

    下列给定程序中,函数fun()的功能是:判断一个整数m是否是素数,若是返回l,否则返回0。在main()函数中,若fun()返回1则输出YES,若fun()返回0则输出NO!

    请改正程序中的错误,使它能得出正确的结果。

    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构.

    试题程序:

    include <conio.h>

    include <stdio.h>

    int fun(int m)

    { int k=2;

    while (k<=m&&(m%k))

    /*************found*********************/

    k++

    /*************found*********************/

    if(m=k)

    return 1;

    else return O;

    }

    main ( )

    { iht n;

    clrscr ();

    printf("\nPlease enter n: ");

    scanf ("%d", &n);

    if (fun (n)) printf ("YES\n");

    else printf ("NO! \n");

    }


    正确答案:(1)错误:k++ 正确:k++ (2)错误:if(m=k) 正确:if(m==k)
    (1)错误:k++ 正确:k++ (2)错误:if(m=k) 正确:if(m==k) 解析:函数fun()的功能是判断m是否为素数:m从2开始作为除数,并对m取余,若不存在一个数使得余数为0,则m为素数,程序的错误在于if(m=k)语句中的逻辑表达式写成了赋值表达式。

  • 第14题:

    下列程序的功能是:输出10到100之间的所有回文素数。所谓回文素数是指,如果一个数是素数,则该数反序后形成的数也是素数。例如,13是素数,13反序形成得到数为31,31也是素数,则称13为回文素数。

    Private Sub Command1 2_Click( )

    Dim k As Integer,m As Integer,n AsInteger

    For k=10 T0 100

    If prim(k)Then

    m=__________

    n=0

    Do While m>0

    N=n*10+Im Mod l0

    M=m/10

    Loop

    If prim(n)Then

    MsgBox k&“,”&n

    End If

    End If

    Next k

    End Sub

    Public Function prim(n As Integer)As Boolean

    Dim j As Integer

    For j=2 To n/2

    If n Mod J=0 Then

    prim=__________

    Exit Function

    End If

    Next j

    prim=True

    Exit Function

    End Function

    横线处应填写的内容是( )。

    A.k Fake

    B.k True

    C.m False

    D.n True


    正确答案:A
    素数是只能被1和它本身整除的数,因此本题第二空填写False。click函数主要有两个功能,一个是返序,另一个是判断是不是回文素数。在for循环中判断k是不是回文素数,rn是代表即将判断的数字,也就是k。

  • 第15题:

    编写程序,判断一个大于等于3的自然数是否为素数。


    正确答案:程序代码如下: CLEAR INPUT“请输入自然数(>=3):” TO n f=0 i=2 DO WHILE i=INT(SQRT(n)) IF MOD(ni)>0 i=i+1 LOOP ELSE f=1 EXIT ENDIF ENDDO IF f=0 ? STR(n3)+“是素数” ELSE ? STR(n3)+“不是素数” ENDIF RETURN
    程序代码如下: CLEAR INPUT“请输入自然数(>=3):” TO n f=0 i=2 DO WHILE i=INT(SQRT(n)) IF MOD(n,i)>0 i=i+1 LOOP ELSE f=1 EXIT ENDIF ENDDO IF f=0 ? STR(n,3)+“是素数” ELSE ? STR(n,3)+“不是素数” ENDIF RETURN

  • 第16题:

    有以下程序 main ( ) { int i,s=0; for (i=1;i<10; i+=2) s+=i+1; print f ( "%d\n", s); } 程序执行后的输出结果是

    A.自然数1~9的累加和

    B.自然数1~10的累加和

    C.自然数1~9中奇数之和

    D.自然数1~10中偶数之和


    正确答案:D
    解析:本题考核的知识点是for循环语句和复合赋值+=运算符的应用。本题中,i赋初值为1,并对其每次进行加2操作,即i每次均为1~10之间的奇数,s+=i+1,即s=s+i+1,相当于s等于原来的s每次加上1~10之间的偶数,直到i10不成立.当i=1时,s=0+1+1=2;当i=3时,s=2+3+1=2+4;当i=5时,s=2+4+5+1=2+4+6;当i=7时,s=2+4+6+7+1=2+4+6+8;当i=9时,s=2+4+6+8+9+1=2+4+6+8+10;当i=11时,i10不成立,结束循环。所以,4个选项中选项D符合题意。

  • 第17题:

    (7)在窗体上画1个名称为Command 1的命令按钮,然后编写如下程序:

    Private Sub Command 1 Click()

    Dim m As Integer, x As Integer

    Dim flag As Boolean

    flag=False

    n=Val(InputBox("请输入任意1个正整数"))

    Do While Not flag

    a=2

    flag=【7】

    Do While flag And a <= Int(Sqr(n))

    If n/a=n\a Then

    flag=False

    Else

    【8】

    End If

    Loop

    If Not flag Then n=n+l

    Loop

    Print【9】

    End Sub

    上述程序的功能是,当在键盘输入任意的1个正整数时,将输出不小于该整数的最小素数。请填空完善程序。


    正确答案:
    (7)True
    (8)a=a+1
    (9)n

  • 第18题:

    利用穷举法编写一个算法判断给定的正整数n是否是素数,即判断n是否只能被1和自身整除。


    正确答案: #include“math.h”
    #include“stdio.h”
    void main()
    {
    int m,i,k;
    scanf("%d",&m);
    ksqrt(m);
    for(i=2;i<=k;i++)
    if(m%i==0)break;
    if(i>=k+1)
    printf("%d is a prime number/n",m);
    else
    printf("%d is not a prime number/n",m);
    }

  • 第19题:

    素数是只能被1和它本身整除的是,以下是素数的是()。

    • A、12
    • B、7
    • C、27
    • D、99

    正确答案:B

  • 第20题:

    费马认为当n为非负整数时,2的n次幂加1,所得的结构都是素数。


    正确答案:错误

  • 第21题:

    数据结构与算法中,关于素数描述正确的是()

    • A、素数就是合数
    • B、素数不能被本身整除
    • C、素数又称为质数只能被1和它本身整除
    • D、素数不仅能被1和它本身整除,还能被其它数整除

    正确答案:C

  • 第22题:

    多选题
    素数是只能被1和它本身整除的整数,那么下面不是素数的是()。
    A

    13

    B

    15

    C

    27

    D

    34


    正确答案: C,A
    解析: 暂无解析

  • 第23题:

    单选题
    数据结构与算法中,关于素数描述正确的是()
    A

    素数就是合数

    B

    素数不能被本身整除

    C

    素数又称为质数只能被1和它本身整除

    D

    素数不仅能被1和它本身整除,还能被其它数整除


    正确答案: A
    解析: 暂无解析

  • 第24题:

    单选题
    任何大于1的自然数,都可以表示成有限个素数(可以重复)的乘积,并且如果不计次序的话,表法是唯一的。这是()。
    A

    代数基本定理

    B

    算术基本定理

    C

    素数定理

    D

    潘洛斯阶梯


    正确答案: B
    解析: 暂无解析