2026年3月 电子学会 C++编程等级考试二级真题
剩余时间 --:--:--
单选题 共 10 题
1.

C++中,用于从文件中读取数据的文件流对象?( )

2.

以下关于C++文件操作的说法,错误的?( )

3.

执行以下C++代码,变量b的最终值?( )

#include <iostream>
int main() {
    double a = 3.99;
    int b = (int)a;
}
4.

执行以下C++代码,输入`85`后,输出结果?( )

#include <iostream>
int main() {
    int score;
    std::cin >> score;
    if(score >= 90)
        std::cout << "A";
    else if(score >= 80)
        std::cout << "B";
    else if(score >= 60)
        std::cout << "C";
    else
        std::cout << "D";
}
5.

以下C++代码执行后,输出结果?( )

#include <iostream>
int main() {
    int a = 10, b = 20;
    if(a > 30){
        if(a == b) 
            std::cout << "1";
        else 
            std::cout << "2";
    }else{
        if(a < b) 
            std::cout << "3";
        else 
            std::cout << "4";
    }
}
6.

以下C++代码执行后,`*`一共会输出多少次?( )

#include <iostream>
int main() {
    for(int i=0;i<3;i++)
        for(int j=0;j<4;j++)
            std::cout << "*";
}
7.

以下C++代码执行后,输出的结果?( )

#include <iostream>
int main() {
    int cnt = 0;
    for(int i=1;i<=5;i++)
        for(int j=1;j<=i;j++)
            cnt += 1;
    std::cout << cnt;
}
8.

以下关于C++一维数组的定义,正确的?( )

9.

执行以下代码,数组arr中第3个元素(下标为2)的值?( )

#include <iostream>
int main() {
    int arr[5] = {10,20,30,40,50};
    arr[2] = arr[2] + arr[4];
}
10.

以下代码用于求数组中所有元素的最大值,横线处应填入的代码?( )

#include <iostream>
int main() {
    int arr[5] = {3,1,4,5,2};
    int max_val = arr[0];
    for(int i=1;i<5;i++){
        _________
    }
    std::cout << max_val;
}
判断题 共 10 题
1.

C++中,使用文件流操作文件时,需要引入<fstream>头文件。( )

2.

ios::out模式打开已存在的文件,不会清空文件原有内容。( )

3.

C++中,将浮点型赋值给整型变量时,会自动进行四舍五入。( )

4.

if-else if-else语句中,最多只会有一个分支的代码被执行。( )

5.

switch语句中,每个case分支都必须包含break语句,否则会编译报错。( )

6.

两层for循环嵌套时,外层循环每执行一次,内层循环会完整执行一遍。( )

7.

while循环可以嵌套for循环,for循环也可以嵌套while循环。( )

8.

C++中,数组的下标默认从1开始。( )

9.

一维数组在内存中是连续存储的。(

10.

定义数组int arr[10];后,可以通过arr[10]访问数组的最后一个元素。( )

问答题 共 2 题
1.

题目描述

给定一个正整数 n,输出一个数字三角阵,当 n=4 时,输出的三角阵如下:

   1

  22

 333

4444

输入格式

单个正整数表示n 

输出格式

一个 n n列的数字三角阵,具体格式参考题面。

输入样例

5

输出样例

    1

   22

  333

 4444

55555

说明提示

1n9

2.

题目描述

给定一个正整数 n,以及 n 个整数,请完成以下两个计算:

找出这 n个整数中最大的偶数;若不存在偶数,则该值为 0

计算这 n个整数中所有奇数的和;若不存在奇数,则该值为 0

输入格式

第一行输入一个正整数 n,表示整数的个数;

第二行输入 n个整数ai

输出格式

输出两行,第一行输出最大的偶数,若无则输出 0;第二行输出所有奇数的和,若无则输出 0

输入样例#1

5

1 3 5 8 10

输出样例#1

10

9

输入样例#2

3

7 11 15

输出样例#2

0

33

输入样例#3

4

-2 6 -8 4

输出样例#3

6

0

说明提示

1n1001 \leq n \leq 1001n100

1000ai1000-1000 \leq a_i \leq 10001000a

i1000

C++ 编辑器
输入
输出