#6124. gesp二级真题分类九:数论基础

gesp二级真题分类九:数论基础

九、数论基础(素数、因数、回文、数位等)(共12题)

题目

1. 下面代码用于判断N是否为质数,说法正确的是( )。

cin>>N;
for(i=2;i<N/2;i++)
    if(N%i==0){
        cout<<"不是质数";
        break;
    }
if(i>=N/2) cout<<"是质数";

{{ select(1) }}

  • 代码能正确判断
  • 代码总是不能判断
  • 删除break就能正确判断
  • 边界存在问题,应将N/2改为N/2+1

2. 下面代码用于输出N和M之间的孪生素数,横线处应填( )。

for(int i=N; i<________; i++)
    if(isPrime(i) && isPrime(i+2))
        printf("%d %d\n",i,i+2);

{{ select(2) }}

  • M-2
  • M-1
  • M
  • M+1

3. 下面代码用于判断一个数是否为回文数,横线处应填( )。

int n,a=0,k;
cin>>n;
k=n;
while(n>0){
    a=________;
    n/=10;
}
if(a==k) cout<<"是回文数";

{{ select(3) }}

  • 10*a+n%10
  • a+n%10
  • 10*a+n/10
  • a+n/10

4. 下面代码用于求1到N之间正整数中含有3的数的个数,横线处应填( )。

for(i=1;i<=N;i++){
    j=i;
    while(j!=0){
        if(j%10==3){
            cnt++;
            ________;
        }
        ________;
    }
}

{{ select(4) }}

  • continue; j/=10
  • break; j/=10
  • continue; j%=10
  • break; j%=10

5. 下面代码用于求正整数各位数字之和,横线处不应填入( )。

int tnt=0,N;
cin>>N;
while(N!=0){
    ________;
    N/=10;
}
cout<<tnt;

{{ select(5) }}

  • tnt=tnt+N%10
  • tnt+=N%10
  • tnt=N%10+tnt
  • tnt=N%10

6. 判断一个数是否为自守数(平方的尾数等于本身)。相关说法错误的是( )。
{{ select(6) }}

  • 如果Flag在循环中不被改为false,则是自守数
  • 代码if(N1%10!=M1%10)用于判断个位数是否相等
  • 代码N1=N1/10; M1=M1/10; 将个位数去掉
  • 将N1>0改为N>0效果相同

7. 下列哪个数既是回文数又是质数?( )
{{ select(7) }}

  • 101
  • 121
  • 123
  • 131

8. 在1~1000中,能被7整除但不能被3整除的数有多少个?( )
{{ select(8) }}

  • 95
  • 96
  • 97
  • 98

9. 一个数的所有数位都是偶数,则称其为“偶位数”。下列哪个是偶位数?( )
{{ select(9) }}

  • 1234
  • 2468
  • 1357
  • 2023

10. 下面代码用于判断一个正整数是否为完全平方数,横线处应填( )。

int n;
cin>>n;
int s=sqrt(n);
if(________) cout<<"是";
else cout<<"不是";

{{ select(10) }}

  • s*s==n
  • s==n
  • s*2==n
  • s==sqrt(n)

11. 下面代码用于输出0-100之间能被7整除但不能被3整除的数,横线处不能填入的是( )。

for(i=0;i<100;i++)
    if(________)
        cout<<i<<endl;

{{ select(11) }}

  • i%7==0 && i%3!=0
  • (i%7) && i%3!=0
  • i%7 && i%3
  • i%70 && i%30

12. 下面代码用于判断正整数各位数字之和,横线处不应填入的是( )。

int tnt=0,N;
cin>>N;
while(N!=0){
    ________;
    N/=10;
}
cout<<tnt;

{{ select(12) }}

  • tnt=tnt+N%10
  • tnt+=N%10
  • tnt=N%10+tnt
  • tnt=N%10