A. 2024年信息素养大赛(4)

    客观题

2024年信息素养大赛(4)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

一. 单项选择题(共 15 题,每题 5 分,共计 75 分)

1、有以下函数,当调用语句为 longlong p=fun(3,3)p = fun ( 3 , 3 ) ;时,返回的 pp 值是? ( )

long fun (int x, int y) {
  int i;
  long p= 1;
  for (i = 0; i < y; i ++)
    p *= x;
  return p;
}

{{ select(1) }}

  • 3
  • 9
  • 27
  • 71

2、下列事件中的必然事件是?( ) {{ select(2) }}

  • 小A同学参加下周的数学考试,一定能考 100 分
  • 射击运动员射靶 10 次,必定能有 1 次正中靶心
  • 打开电视机,正好在播放新闻联播
  • 口袋中有 2 个红球和 1 个白球,从中摸出 2 个球,必定至少有 1 个红球

3、二进制数 0.1010.101 转换为十进制数为?( ) {{ select(3) }}

  • 0.5
  • 0.625
  • 0.2
  • 0.75

4、有 ABCDEA、B、C、D、E 五个同学站成一排,如果 AABB 必须站在一起,则有多少种不同的排法?( ) {{ select(4) }}

  • 24
  • 48
  • 60
  • 120

5、在 Dev C++中,C++ 源程序文件的默认扩展名为( ),C++ 目标文件连接而成的可执行文件的默认扩展名为?( ) {{ select(5) }}

  • .c,.exe
  • .cpp,.exe
  • .exe,.cpp
  • .exe,.c

6、有以下函数定义,当 nn 传入数为 10 时,返回值应为?( )

int func ( int n ) {
  if ( n == 1 )
    return 1;
  else
    return func ( n - 1 ) + n;
}

{{ select(6) }}

  • 45
  • 55
  • 66
  • 1

7、下面哪种循环语句在条件判断之前至少会执行一次循环体?( ) {{ select(7) }}

  • for
  • while
  • do-while
  • switch

8、填写以下C++程序,使其输出 "Hello"Hello , World!"World!" ,横线处应填写?( )

#include<iostream>
using namespace std;
int main() {
  _______<< "Hello, World!" << endl;
  return 0;
}

{{ select(8) }}

  • cin
  • cout
  • std::cin
  • std::cout

9、有两个函数 fun1()fun1()fun2()fun2() 定义如下,在主函数中有: intint x=1;x=fun1(x)x = 1 ; x = fun1(x);调用,此时 xx 的值为? ( )

int fun1 (int x) {
  x++;
  fun2(x);
    return x;
}
void fun2 (int x){
  x++;
}

{{ select(9) }}

  • 1
  • 2
  • 3
  • 4

10、以下程序段运行后,输出应为?( )

int a , b;
for (a = 1, b = 1; a <= 100; a ++) {
  if (b > 20)
    break;
  if (b % 4 == 1) {
    b = b + 4;
    continue;
  }
  b = b - 5;
}
cout << a ;

{{ select(10) }}

  • 100
  • 20
  • 9
  • 6

11、以下程序段运行后,输入: ABCdefABCdef ,输出应为?( )

char ch;
while ((ch = getchar()) != '\n') {
  if (ch >= 'A' && ch <= 'Z')
    ch = ch + 32;
  else if (ch >= 'a' && ch <= 'z')
    ch = ch - 32;
}
cout << ch;

{{ select(11) }}

  • ABCdef
  • abcdef
  • ABCDEF
  • abcDEF

12、下列代码中,哪一个选项正确的输出了 numnum 的值?( )

int main() {
  int num = 10;
  cout << num++<< endl;
  cout << ++num << endl;
  cout << num-- << endl;
  cout << --num << endl;
  return 0;

{{ select(12) }}

  • 10 12 12 10
  • 10 12 11 9
  • 11 12 12 10
  • 11 12 11 9

13、斐波那契数列的第 1 和第 2 个数分别为 0 和 1 ,从第三个数开始,每个数等于其前两个数之和,即 F(0)=0F(0) = 0F(1)=1F(N)=F(N1)+F(N2)F(1) = 1,F(N) = F(N - 1) + F(N - 2),其中 N>1N > 1 。 为求斐波那契数列中的前 20 个数,要求每行输出 5 个数编写了以下程序,在 3 个空格处应填写哪些内容?( )

#include<iostream>
using namespace std;
int main() {
  int n = 20; //需要计算的项数
  int f1 = 0, f2 = 1; // 前两项
  int fn; // 第n项
  cout <<"斐波那契数列前"<<n << "个数为:" << endl;
  // 计算斐波那契数列前n项并输出
  for (int i = 1; i <= n; i++){
    // 计算第i项
    if (i == 1){
      fn = f1;
    }
    else if (i == 2) {
      fn = f2;
    }
    else {
      fn = __(1)__;
      f1 = f2;
      f2=__(2)__;
    }
  }
  //输出第i项
  cout << fn << "\t";
  // 每行输出5个数
  if (__(3)__){
    cout << endl;
  }
  return 0;
}

{{ select(13) }}

  • f1,fn, i==5
  • fn, f1 + fn, i / 5 == 0
  • f1 + f2, fn, i % 5 == 0
  • f1 + f2, f1, i % 5 == 0

14、以下程序输出多组数字,其中包括下列选项中的哪个选项?( )

#include<iostream>
using namespace std;
int main() {
  int g,s,b;
  for(int n = 100 ; n < 1000 ; n ++){
    b = n / 100;
    s = n / 10 % 10;
    g = n % 10;
    if( g*g*g + s*s*s + b*b*b == n){
      cout<<n<<endl;
    }
  }
  return 0;
}

{{ select(14) }}

  • 407,153
  • 408,154
  • 408,153
  • 407,159

15、下面程序运行后输入 4 ,输出结果应是?( )

#include <iostream>
using namespace std;
int fac (int n) {
  if (n <= 1)
    return 1;
  else
    return n * fac (n - 1);
}
int main() {
  int n = 0;
  cin >> n;
  int ret = fac (n);
  cout << ret;
  return 0;
}

{{ select(15) }}

  • 4
  • 12
  • 24
  • 48

二. 判断题(共 5 题,每题 5 分,共计 25 分)

16.如果定义了一个函数 intint minmin ( intint aa, intint bb );用来返回 aabb 中较小的数,那么,想求 15、26、47 三个数中最小的数,用 intint mm = minmin ( 15, minmin ( 26 , 47 ) ) ;这种调用形式。 ( ) {{ select(16) }}

  • ×
  1. continuecontinue 语句只能出现在循环体中。( ) {{ select(17) }}
  • ×

18.在下面程序段中,循环体的循环次数为 4 次。( )

int i = 0;
do
  i++;
while(i *i < 10);

{{ select(18) }}

  • ×

19.有以下程序段:

for(int i= 10;i > 0; i -= 2){
  cout<<i<<" ";

它的输出结果是 10 8 6 4 2 0。 () {{ select(19) }}

  • ×
  1. C++ 函数参数的作用域是函数体内。( ) {{ select(20) }}
  • ×

2025年信息素养大赛(4)

未参加
状态
已结束
规则
IOI
题目
1
开始于
2025-5-4 8:30
结束于
2025-5-4 8:42
持续时间
0.2 小时
主持人
参赛人数
28