C语言 —— 图形打印
题目1:

思路:
如果我们要打印一个实心正方形,其实就是一个二维数组,i控制行,j控制列,行列不需要控制,arr[i][j]直接打印星号即可。
对于空心正方形,我们只需要控制行和列的条件,当i== 0或i<n-1,j==0或j<n-1条件成立时,我们才打印星号,其他地方打印空格即可。
代码实现如下:
#include <stdio.h>int main()
{int arr[20][20] = { 0 };int n = 0;while (scanf("%d", &n) != EOF){for (int i = 0; i < n; i++){for (int j = 0; j < n; j++){//1.打印星号if ((i == 0) || (i == n - 1) || (j == 0) || (j == n - 1)){printf("* ");}//2.打印空格else{printf(" ");}}printf("\n");}}return 0;
}
题目2:

思路:
通过观察我们发现,当i == j时,打印主对角线的星号,当i + j ==n-1时,打印次对角线的星号,其他地方打印空格即可。
代码实现如下:
#include <stdio.h>int main()
{int arr[20][20] = { 0 };int n = 0;while (scanf("%d", &n) != EOF){for (int i = 0; i < n; i++){for (int j = 0; j < n; j++){//1.打印星号if ((i == j) || (i + j) == n-1){printf("*");}//2.打印空格else{printf(" ");}}printf("\n");}}return 0;
}
题目3:

思路:我们分为上半部分和下半部分的打印:
#include <stdio.h>int main()
{int line = 0;scanf("%d", &line);//打印上半部分for (int i = 0; i < line; i++){//1.打印空格for (int j = 0; j < line - 1 - i; j++){printf(" ");}//2.打印星号for (int j = 0; j < 2 * i + 1; j++){printf("*");}printf("\n");}//打印下半部分for (int i = 0; i < line - 1; i++){//1.打印空格for (int j = 0; j < i + 1; j++){printf(" ");}//2.打印星号for (int j = 0; j < (line - 1 - i) * 2 - 1; j++){printf("*");}printf("\n");}return 0;
}
相关文章:
C语言 —— 图形打印
题目1: 思路: 如果我们要打印一个实心正方形,其实就是一个二维数组,i控制行,j控制列,行列不需要控制,arr[i][j]直接打印星号即可。 对于空心正方形,我们只需要控制行和列的条件&…...
Python基础学习(11)常用模块
文章目录 一、time二、random三、os四、sys五、json补充1:JSON字符串补充2:JSON字符串和字典的区别 六、hashlib Python基础学习(1)基本知识 Python基础学习(2)序列类型方法与数据类型转换 Python基础学习(3)进阶字符串(格式化输出) Python基础学习(4)散…...
嵌入式学习37-TCP并发模型
TCP并发模型: 1.TCP多线程模型: 缺点: 1.创建线程会带来 资源开销 2.能够实现的 并发量 比较有限 2.IO模型: 1.阻塞IO: 没有…...
C语言字符函数和字符串函数
前言 今天这篇博客咱们一起来认识一些特殊的函数,在编程的过程中,我们经常要处理字符和字符串,为了方便字符和字符串,C语言提供了一些库函数,让我们一起看看这些函数都有什么功能吧!!࿰…...
Go语言必知必会100问题-22 空切片与nil切片有区别吗?
空切片与nil切片有区别吗? 很多开发人员经常混淆nil切片和空切片,不清楚什么时候使用空切片什么时候使用nil,而有些库函数又对这两者使用进行了区分。下面先来看看它们的定义。 空切片是length为0的切片当切片等于nil时为nil切片 下面是几种不同空切片…...
【C++进阶】C++多态概念详解
C多态概念详解 一,多态概念二,多态的定义2.1 多态构成的条件2.2 什么是虚函数2.3 虚函数的重写2.3.1 虚函数重写的特例2.3.2 override和final 2.4 重载和重写(覆盖)和重定义(隐藏)的区别 三,抽象…...
Python 导入Excel三维坐标数据 生成三维曲面地形图(面) 2、线条平滑曲面但有间隔
环境和包: 环境 python:python-3.12.0-amd64包: matplotlib 3.8.2 pandas 2.1.4 openpyxl 3.1.2 scipy 1.12.0 代码: import pandas as pd import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D from scipy.interpolate import griddata imp…...
前端精准测试调用链路分析
精准测试在评估需求的测试范围时,需要评估一下代码的影响范围,这个范围有两部分:一是需求直接修改的代码;二是修改代码影响到的功能模块。代码影响到的功能一般是通过调用链路分析来实现的,java和kotlin代码可以由java…...
Objective-C blocks 概要
1.block的使用 1.1什么是block? Blocks是C语言的扩充功能:带有自动变量(局部变量)的匿名函数。 “带有自动变量”在Blocks中表现为“截取自动变量" “匿名函数”就是“不带名称的函数” 块,封装了函数调用及调用…...
Linux操作系统-07-Linux安装应用
一、使用rpm安装应用(不推荐) 先下载到本地,以.rpm文件名结尾,下载完成后,再安装 rpm -qa | grep mysql #查询当前系统是否有下载过mysql包 先上传mysql的rpm安装包到linux的opt目录 安装 rpm -ivh …...
DevOps实战:Docker、Kubernetes与Jenkins的完美融合
DevOps与容器化技术:Docker、Kubernetes和Jenkins 引言 在软件开发领域,DevOps文化和容器化技术已经成为当今最热门的话题之一。DevOps的目标是缩短开发和运维之间的距离,提高软件交付的速度和质量。而容器化技术,如Docker和Kub…...
Python面向对象——程序架构
需求 创建图形管理器 -记录多种图形(圆形、矩形.) --提供计算总面积的方法, 要求:增加新图形,不影响图形管理器 测试: 创建图形管理器,存储多个图形对象。 通过图形管理器,调用计算总面积方法 思路 代码 # ------…...
springboot单体项目链路日志跟踪及接口耗时
最近接触一个新的传统项目,在联调过程中,查看日志特别不方便,既无trackId,即无接口耗时,所以写了该博客。话不多说,直接上代码 1、实体类user package com.yk.domain;import lombok.Data;@Data public class User {private Long id;private String username;private St…...
力扣hot---岛屿数量
dfs思路: 首先通过两层for循环遍历每一个点,如果这个点为0或者2(这个2是什么呢?是在遍历该点以及该点连成的这一片区域中,因为通过深度优先搜索,遍历该点就等于遍历这一片区域,遍历这篇区域中的…...
如何在Linux使用docker安装Plik并实现无公网ip上传下载内网存储的文件资源
文章目录 1. Docker部署Plik2. 本地访问Plik3. Linux安装Cpolar4. 配置Plik公网地址5. 远程访问Plik6. 固定Plik公网地址7. 固定地址访问Plik 正文开始前给大家推荐个网站,前些天发现了一个巨牛的 人工智能学习网站, 通俗易懂,风趣幽默&…...
Nginx反向代理详解
1. 什么是反向代理 反向代理是一种服务器代理的方式,它代理了客户端的请求并将请求转发给后端服务器,然后将后端服务器的响应返回给客户端。在这个过程中,客户端并不直接与后端服务器通信,而是通过反向代理服务器来实现请求转发和…...
【Android】 ClassLoader 知识点提炼
1.Java中的 ClassLoader 1.1 、ClassLoader的类型 Java 中的类加载器主要有两种类型,即系统类加载器和自定义类加载器。其中系统类 加载器包括3种,分别是 Bootstrap ClassLoader、Extensions ClassLoader 和 Application ClassLoader。 1.1.1.Bootstra…...
16. C++标准库
C标准库兼容C语言标准函数库,可以在C标准库中直接使用C语言标准函数库文件,同时C标准库增加了自己的源代码文件,新增文件使用C编写,多数代码放在std命名空间中,所以连接C标准库文件后还需要 using namespace std;。 【…...
JVM内存结构介绍
1. 什么是JVM 我们都知道在 Windows 系统上一个软件包装包是 exe 后缀的,而这个软件包在苹果的 Mac OSX 系统上是无法安装的。类似地,Mac OSX 系统上软件安装包则是 dmg 后缀,同样无法在 Windows 系统上安装。 Java 代码为什么可以在 Windows…...
Linux常见指令总结
ls:显示当前目录下文件列表 常用的命令行参数: -l 显示更多的文件属性 -a 显示所有的文件/目录(包括隐藏的) -d 只显示目录 ps:参数可以叠加使用。 例如:ls -la 显示所有文件…...
艾米森冲刺港股:年营收1542万 亏4898万
雷递网 雷建平 4月7日武汉艾米森生命科技股份有限公司(简称:“艾米森”)日前更新招股书,准备在港交所上市。年营收1542万 亏4898万艾米森于2015年1月成立,是一家早期癌症检测公司,战略聚焦于高发病率、高死…...
5大惊喜功能!BiliBili-UWP第三方客户端带你解锁Windows端B站极致体验
5大惊喜功能!BiliBili-UWP第三方客户端带你解锁Windows端B站极致体验 【免费下载链接】BiliBili-UWP BiliBili的UWP客户端,当然,是第三方的了 项目地址: https://gitcode.com/gh_mirrors/bi/BiliBili-UWP 还在为网页版B站的卡顿、广告…...
Redis命令处理机制源码探究霉
一、项目背景与核心价值 1. 解决的核心痛点 Navicat的数据库连接密码并非明文存储,而是通过AES算法加密后写入.ncx格式的XML配置文件中。一旦用户忘记密码,常规方式只能重新配置连接,效率极低。本项目只作为学习研究使用,不做其他…...
CiteSpace实战:如何用WOS数据生成高质量文献知识图谱(含美化技巧)
CiteSpace进阶指南:从WOS数据到学术级知识图谱的实战优化 在科研工作中,一篇优秀的文献综述往往能成为领域研究的"地图",而知识图谱则是这张地图上最直观的路线标识。作为一款专业的文献计量工具,CiteSpace在学术界已有…...
深蓝词库转换器:跨平台输入法词库一键迁移终极指南
深蓝词库转换器:跨平台输入法词库一键迁移终极指南 【免费下载链接】imewlconverter ”深蓝词库转换“ 一款开源免费的输入法词库转换程序 项目地址: https://gitcode.com/gh_mirrors/im/imewlconverter 还在为更换输入法而烦恼吗?每次切换到新的…...
Redis Sentinel高可用实战:主从自动故障转移
一、Sentinel 核心概念 监控:持续检查主从节点是否正常 通知:节点异常时通知管理员或其他程序 自动故障转移:主节点下线时,自动选举新的主节点 配置提供者:客户端通过 Sentinel 获取当前主节点地址 回到顶部 二、…...
STC单片机看门狗避坑指南:从原理到调试的5个关键步骤
STC单片机看门狗避坑指南:从原理到调试的5个关键步骤 在嵌入式系统开发中,稳定性是衡量产品质量的重要指标。作为51单片机开发者,我们常常会遇到程序跑飞、死循环等异常情况,这时内部看门狗(WDT)就成了最后…...
网络流量监控 NetLimiter Pro v4.0.49.0 精简绿色版
NetLimiter Pro是一款很实用的网络控制软件,它允许您优先选择所选应用的流量优先于其他应用,而且你还可以创建自定义过滤器以按方向,协议,IP,应用程序等过滤流量。拥有简洁清爽的管理界面,支持自定义对指定…...
从Hello World到生产部署:Agent开发完整教程
从Hello World到生产部署:Agent开发完整教程引言:为什么现在是学习Agent开发的黄金时代? 痛点引入:从“脚本化工具人”到“自主智能助手”的瓶颈 各位读者朋友们,我是老周,一个在互联网摸爬滚打了12年、从传…...
重庆思庄技术分享——金仓数据库如何手工删除归档日志
金仓数据库如何手工删除归档日志ORACLE有 rman >delete archivelog until sequence# xx那么金仓数据库有类似的功能没有?答案是肯定的,使用sys_archivecleanup...


