选择题 共10道

01 02 03 04 05 06 07 08 09 10


判断题 共10道

11 12 13 14 15 16 17 18 19 20


编程题 共2道

21 22

E1007 AI生成-CIE-202603-C++二级-真题-202605250912-练习

选择题 共10道
01 在C++中,如果使用ifstream对象fin打开文件"data.txt",下列哪条语句可以正确判断文件是否成功打开?( ) 4分
登录后查看选项
02 以ios::trunc模式打开文件进行写入操作时,以下描述正确的是?( ) 4分
登录后查看选项
03 执行以下C++代码,输出结果为?( )
#include <iostream>
int main() {
    char ch = 'B';
    int num = ch + 1;
    std::cout << num;
}
4分
登录后查看选项
04 执行以下C++代码,变量res的最终值为?( )
#include <iostream>
int main() {
    int x = 2;
    int res = 0;
    switch(x) {
        case 1: res = 10; break;
        case 2: res = 20;
        case 3: res = 30; break;
        default: res = 40;
    }
    std::cout << res;
}
4分
登录后查看选项
05 以下C++代码输出什么图形?( )
#include <iostream>
int main() {
    for(int i=1; i<=3; i++) {
        for(int j=1; j<=i; j++)
            std::cout << "*";
        std::cout << std::endl;
    }
}
4分
登录后查看选项
06 执行以下C++代码后,sum的值为?( )
#include <iostream>
int main() {
    int sum = 0;
    for(int i=1; i<=5; i++) {
        if(i % 2 == 0)
            continue;
        sum += i;
    }
    std::cout << sum;
}
4分
登录后查看选项
07 以下关于一维数组初始化的语句,正确的是?( ) 4分
登录后查看选项
08 以下代码用于统计数组arr中奇数的个数,横线处应填入的代码是?( )
#include <iostream>
int main() {
    int arr[] = {1,2,3,4,5,6};
    int cnt = 0;
    for(int i=0; i<6; i++) {
        if(________)
            cnt++;
    }
    std::cout << cnt;
}
4分
登录后查看选项
09 定义int a[2][3] = {{1,2,3},{4,5,6}}; 则表达式a[1][2]的值为?( ) 4分
登录后查看选项
10 以下代码使用冒泡排序对数组进行升序排列,横线处应填入的代码是?( )
#include <iostream>
int main() {
    int a[5] = {5,3,4,1,2};
    for(int i=0; i<4; i++) {
        for(int j=0; j<4-i; j++) {
            if(________) {
                int t = a[j];
                a[j] = a[j+1];
                a[j+1] = t;
            }
        }
    }
    for(int i=0; i<5; i++)
        std::cout << a[i] << " ";
}
4分
登录后查看选项
判断题 共10道
11 C++中,使用ifstream对象读取文件时,必须调用open()函数才能开始读取。 ( ) 2分
登录后查看选项
12 使用文件流以只读方式打开文件时,如果文件不存在,程序会自动创建一个空文件。 ( ) 2分
登录后查看选项
13 将int类型的值赋给char类型变量时,如果int值超出char的表示范围,会发生数据丢失。 ( ) 2分
登录后查看选项
14 if语句的条件表达式可以是整型表达式,非0值表示真,0表示假。 ( ) 2分
登录后查看选项
15 switch语句中,default标签必须放在所有case标签之后,否则会编译错误。 ( ) 2分
登录后查看选项
16 在嵌套循环中,内层循环每执行一次,外层循环会完整执行一遍。 ( ) 2分
登录后查看选项
17 do-while循环的循环体至少会被执行一次,即使条件表达式一开始就为假。 ( ) 2分
登录后查看选项
18 定义数组时,数组的大小必须是整型常量表达式。 ( ) 2分
登录后查看选项
19 二维数组int a[3][4]; 表示有3列、4行。 ( ) 2分
登录后查看选项
20 一维数组的数组名代表数组的首地址,且该地址不能被修改。 ( ) 2分
登录后查看选项
编程题 共2道
21 [电子学会202603二级]螺旋数字方阵 给定一个正整数 n,生成一个 n×n 的螺旋方阵,数字从 1 开始顺时针填充,最后输出该方阵。 输入格式 一个正整数 n(1 ≤ n ≤ 20)。 输出格式 n 行,每行 n 个整数,数字之间用一个空格分隔,表示填充好的螺旋方阵。 输入样例#1 4 输出样例#1 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 20分
登录后作答
22 [电子学会202603二级]统计众数 输入 n 个整数,请找出出现次数最多的整数(众数)。如果有多个众数,输出其中值最小的那个。 输入格式 第一行一个正整数 n(1 ≤ n ≤ 1000)。 第二行 n 个整数,每个整数的范围在 -10000 到 10000 之间。 输出格式 一个整数,即满足条件的众数。 输入样例#1 5 1 3 3 2 1 输出样例#1 1 输入样例#2 6 5 5 5 6 6 7 输出样例#2 5 20分
登录后作答