2023年12月CCF—GESP(C++二级)编程能力等级认证试卷
二级
2023
2023-12-31 19:16:26
69次
一、单选题
输入一个正整数N,想找出它所有相邻的因数对,比如,输入12,因数对有(1,2)、(2,3)、(3,4)。下面哪段代码找不到所有的因数对?( )(2023年12月C++二级)
| A. for(i=1;i<N;i++) if(!(N%i) && !(N%(i+1))) printf("(%d,%d)\n", i, i+1); |
B. for(i=2;i<N;i++) if(!(N%i) && !(N%(i+1))) printf("(%d,%d)\n", i, i+1); |
| C. for(i=2;i<N/2;i++) if(!(N%(i-1)) && !(N%i)) printf("(%d,%d)\n", i-1, i); |
D. for(i=1;i<N/2;i++) if(!(N%i) && !(N%(i+1))) printf("(%d,%d)\n", i, i+1); |
【知识点】 CCF—GESP C++二级
二、判断题
三、编程题
小杨做题
时间限制:1.0 s
内存限制:128.0 MB
问题描述
为了准备考试,小杨每天都要做题。第 1 天,小杨做了a道题;第 2 天,小杨做了b道题;从第 3 天起,小杨每天做的题目数量是前两天的总和。
此外,小杨还规定,当自己某一天做了大于或等于m题时,接下来的所有日子里,他就再也不做题了。
请问,到了第N天,小杨总共做了多少题呢?
输入描述
总共 4 行。第一行一个整数 ,第二行一个整数 ,第三行一个整数 ,第四行一个整数 。
保证0≤a,b≤10;a,b<M≤1000000;3≤N≤364。
输出描述
一行一个整数,表示小杨N天里总共做了多少题目。
特别提醒
在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。
样例输入 1
1 2 10 5
样例输出 1
19
样例解释 1
小杨第一天做1题,第二天做2题,第三天做1+2=3题,第四天做2+3=5题,第五天做3+5=8题。因此他总共做了1+2+3+5+8=19题。
样例输入 2
1 1 5 8
样例输出 2
12
样例解释 2
小杨前 5 天分别做了1,1,2,3,5题,由于第 5 天小杨做了5题,而m=5,于是小杨从此以后不再做题。因此小杨总共做了1+1+2+3+5=12题。
【知识点】 CCF—GESP C++二级
小杨的 H 字矩阵
时间限制:1.0 s
内存限制:128.0 MB
问题描述
小杨想要构造一个N×N的 H 字矩阵(N为奇数),具体来说,这个矩阵共有N行,每行N个字符,其中最左列、最右列都是 | ,而中间一行(即第 行)的第2~N-1个字符都是 - ,其余所有字符都是半角小写字母a 。例如,一个N=5的 H 字矩阵如下:
|aaa| |aaa| |---| |aaa| |aaa|
请你帮小杨根据给定的 打印出对应的“H 字矩阵”。
输入描述
一行一个整数N(5≤N≤49,保证N为奇数)。
输出描述
输出对应的“H 字矩阵”。
请严格按格式要求输出,不要擅自添加任何空格、标点、空行等任何符号。你应该恰好输出N行,每行除了换行符外恰好包含N个字符,这些字符要么是 - ,要么是 | ,要么是 a 。你的输出必须和标准答案完全一致才能得分,请在提交前仔细检查。
特别提醒
在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。
样例输入 1
5
样例输出 1
|aaa| |aaa| |---| |aaa| |aaa|
样例输入 2
7
样例输出 2
|aaaaa| |aaaaa| |aaaaa| |-----| |aaaaa| |aaaaa| |aaaaa|
【知识点】 CCF—GESP C++二级












