龙空技术网

CCF GESP 2023年12月认证 C++ 2级 C2 编程题1

dino同学 99

前言:

当前我们对“计算机二级c语言真题2023”大体比较重视,看官们都想要了解一些“计算机二级c语言真题2023”的相关资讯。那么小编同时在网络上收集了一些关于“计算机二级c语言真题2023””的相关文章,希望看官们能喜欢,你们快快来了解一下吧!

本题为CCF GESP官方模拟题。

第一题

试题名称:小杨的 X 字矩阵

时间限制:1.0 s

内存限制:128.0 MB

问题描述

小杨想要构造一个 N×N 的 X 字矩阵(N 为奇数),这个矩阵的两条对角线都是半角加号 +,其余都是半角减号 -。例如,一个 5×5 的 X 字矩阵如下:

+---+-+-+---+---+-+-+---+

请你帮小杨根据给定的 N 打印出对应的“X 字矩阵”。

输入描述

一行:一个整数 N(5≤N≤49,保证 N 为奇数)。

输出描述

输出对应的“X 字矩阵”。

请严格按格式要求输出,不要擅自添加任何空格、标点、空行等任何符号。你应该恰好输出 N 行,每行除了换行符外恰好包含 N 个字符,这些字符要么是 +,要么是 -

特别提醒

在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。

样例输入 1

5
样例输出 1
+---+-+-+---+---+-+-+---+
样例输入 2
7
样例输出 2
+-----+-+---+---+-+-----+-----+-+---+---+-+-----+

语言及编译选项

#

名称

编译器

额外参数

代码长度限制

1

g++ with std11

g++

-O2 -std=c++11 -DONLINE_JUDGE

65536 B

题目分析

这个问题需要你编写一个程序,根据用户输入的奇数 N,生成一个 NxN 的 X 字矩阵。矩阵的两条对角线由半角加号(+)组成,其余位置由半角减号(-)组成。

在 C++ 中,你可以使用嵌套的 for 循环来遍历矩阵的行和列,并根据位置决定打印加号还是减号。

这个程序首先读取用户输入的 N。然后,它使用两个嵌套的 for 循环遍历矩阵的行和列。对于每个位置,它检查该位置是否在矩阵的边缘(即,是否等于 0、等于 N-1、等于 N/2 或等于 N/2 + N-1)。如果是,它打印加号(+);否则,它打印减号(-)。最后,每行结束时,程序打印一个换行符。

代码

#include<iostream>using namespace std;int main() {	int N;	cin >> N;  for(int i=1; i<=N; i++) {      for(int j=1; j<=N; j++) {          if(i==j || i+j==N+1) {            cout << "+";          } else {           cout << "-";          }      }      cout << endl;  }  return 0;}

大家有没有更好的编程思路?有的话,多多跟我分享哈,谢谢!

我是dino同学,正在认真学习C++编程和开源硬件,请大家多多关注,多多指导!

标签: #计算机二级c语言真题2023