2024年3月CCF—GESP(C++二级)编程能力等级认证试卷
二级
2024
2024-04-24 20:38:41
52次
一、单选题
给定两个整数n与k,打印出一个栅栏图形,这个栅栏应该分成n段,段与段之间的间隔为 + , 段内的填充为k个 - 。形如n=5,k=6, 时,图形如下:
+-----+-----+-----+-----+-----+
以下程序代码用于绘制该图形,横线处应填写?( )
int n, k, i, j;
n = 5, k = 6;
for (i = 0; i < n; i++){
__________ // 在此处填写代码
for (j = 1; j < k; j++)
cout << '-' ;
}
cout << '+'; | A. cout << '+' << endl; |
B. cout << '+' << ' ' << endl; |
| C. cout << '+'; |
D. cout << '+' << ' '; |
【知识点】 CCF—GESP C++二级
一个数的所有数字倒序排列后这个数的大小保持不变,这个数就是回文数,比如 101 与 6886 都是回文数,而 100 不是回文数。以下程序代码用于判断一个数是否为回文数,横线处应填写?( )
int n,a,k;
cin >> n;
a = 0;
k = n;
while (n > 0){
a = __________; // 在此处填写代码
n /= 10;
}
if (a == k)
cout << "是回文数";
else
cout << "不是回文数"; | A. 10 * a + n % 10 |
B. a + n % 10 |
| C. 10 * a + n / 10 |
D. a + n / 10 |
【知识点】 CCF—GESP C++二级
以下C++代码判断一个正整数N的各个数位是否都是偶数。如果都是,则输出“是”,否则输出“否”。例如N=2024时输出“是”。则横线处应填入( )。
int N,Flag;
cin >> N;
Flag = true;
while (N != 0){
if (N %2 != 0){
Flag = false;
_____________
}
else
N /= 10;
}
if(Flag == true)
cout << "是";
else
cout << "否"; | A. break |
B. continue |
| C. N = N / 10 |
D. N = N % 10 |
【知识点】 CCF—GESP C++二级
二、判断题
三、编程题
乘法问题
问题描述
小 A 最近刚刚学习了乘法,为了帮助他练习,我们给他若干个正整数,并要求他将这些数乘起来。
对于大部分题目,小 A 可以精准地算出答案,不过,如果这些数的乘积超过106,小 A 就不会做了。
请你写一个程序,告诉我们小 A 会如何作答。
输入描述
第一行一个整数n,表示正整数的个数。
接下来n行,每行一个整数a。小 A 需要将所有的a乘起来。
保证n≤50,a≤100。
输出描述
输出一行,如果乘积超过106,则输出 >1000000 ;否则输出所有数的乘积。
特别提醒
在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。
样例输入 1
2 3 5
样例输出 1
15
样例输入 2
3 100 100 100
样例输出 2
1000000
样例输入 3
4 100 100 100 2
样例输出 3
>1000000
【知识点】 CCF—GESP C++二级
小杨的日字矩阵
问题描述
小杨想要构造一个N×N的日字矩阵(N为奇数),具体来说,这个矩阵共有N行,每行N个字符,其中最左列、最右列都是 | ,而第一行、最后一行、以及中间一行(即第(N+1)/2行)的第 个字符都是2~N-1 ,其余所有字符都是半角小写字母 x 。例如,一个N=5的日字矩阵如下:
|---| |xxx| |---| |xxx| |---|
请你帮小杨根据给定的N打印出对应的“日字矩阵”。
输入描述
一行一个整数N(5≤N≤49,保证N为奇数)。
输出描述
输出对应的“日字矩阵”。
请严格按格式要求输出,不要擅自添加任何空格、标点、空行等任何符号。你应该恰好输出N行,每行除了换行符外恰好包含N个字符,这些字符要么是 - ,要么是 | ,要么是 x 。你的输出必须和标准答案完全一致才能得分,请在提交前仔细检查。
特别提醒
在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。
样例输入 1
5
样例输出 1
|---| |xxx| |---| |xxx| |---|
样例输入 2
7
样例输出 2
|-----| |xxxxx| |xxxxx| |-----| |xxxxx| |xxxxx| |-----|
【知识点】 CCF—GESP C++二级

