2.模擬問題——2.使用二維數組輸出圖形

在這里插入圖片描述

用二維數組描述圖形

首先要計算出整個輸出的方框大小,從而判定相應關鍵循環點

#include <cstdio>
char arr[1000][3000];
int main() {int h;//初始化,全部內部填空格while(scanf("%d",&h) != EOF){for (int i = 0; i < h; ++i) {for (int j = 0; j < 3*h-2; ++j) {arr[i][j] = ' ';}}//填充梯形,從最后一行開始往上填,每次少填兩個for (int i = h-1, begin = 0; i >= 0; --i) {for (int j = begin; j < 3*h-2; ++j) {arr[i][j]='*';}begin += 2;}for (int i = 0; i < h; ++i) {for (int j = 0; j < 3*h-2; ++j) {printf("%c",arr[i][j]);}printf("\n");}}return 0;
}

使用字符串輸出

一般的輸入輸出示例:

輸入示例

輸入一個十進制整數

scanf("%d",&n);

輸入一個字符串

char str[10];
scanf("%s",str);//注意,字符和數組可以省略&

輸出示例

輸出一個十進制整數

printf("%d",n);

輸出一個字符串

printf("%s",str);//注意,字符和數組可以省略&

使用字符串輸出簡化上述代碼

每一行需要視作一個字符串,需要將相應字符串的末尾加上結束符’\0’

#include <cstdio>
char arr[1000][3000];
int main() {int h;//初始化,全部內部填空格while(scanf("%d",&h) != EOF){for (int i = 0; i < h; ++i) {for (int j = 0; j < 3*h-2; ++j) {arr[i][j] = ' ';}arr[i][3*h-2] = '\0';/注意這里的改動,\0用來指示每一行的結束}//填充梯形,從最后一行開始往上填,每次少填兩個for (int i = h-1, begin = 0; i >= 0; --i) {for (int j = begin; j < 3*h-2; ++j) {arr[i][j]='*';}begin += 2;}for (int i = 0; i < h; ++i) {printf("%s\n",arr[i]);/注意這里的改動,直接輸出字符串}}return 0;
}

圖案打印問題的一般思路

  1. 申請二維數組,(一般要是固定大小的,放在全局變量的位置);
  2. 根據條件從任意方向開始設置二維數組;
  3. 把圖案每一行當作字符串,邊界后一個位置附‘\0’,表示字符串結尾(也可以在申請完二維數組后,將數組全部初始化為’\0’)
  4. 使用printf、%s,循環打印每一行

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/713635.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/713635.shtml
英文地址,請注明出處:http://en.pswp.cn/news/713635.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

HTML---表單驗證

文章目錄 目錄 本章目標 一.表單驗證概述 二.表單選擇器 屬性過濾選擇器 三.表單驗證 表單驗證的方法 總結 本章目標 掌握String對象的用法會使用表單選擇器的選擇頁面元素會使用JQuery事件進行表單驗證Ajax的概念和作用 一.表單驗證概述 前端中的表單驗證是在用戶提交表…

圖神經網絡導論 - 劉知遠

一、神經網絡基礎 近年來&#xff0c;機器學習領域的發展迅速&#xff0c;主要表現在多種神經網絡架構的出現。盡管不同的神經網絡架構相差甚遠&#xff0c;但現有的神經網絡架構可以分為幾個類別&#xff1a; 卷積神經網路是前饋神經網路的特殊形式&#xff0c;FNN通常是全…

什么是VR虛擬現實|虛擬科技博物館|VR設備購買

虛擬現實&#xff08;Virtual Reality&#xff0c;簡稱VR&#xff09;是一種通過計算機技術模擬出的一種全新的人機交互方式。它可以通過專門的設備&#xff08;如頭戴式顯示器&#xff09;將用戶帶入一個計算機生成的虛擬環境之中&#xff0c;使用戶能夠與這個虛擬環境進行交互…

Spring Boot文檔目錄

目錄 官方文檔 說明&#xff1a;本文檔翻譯的版本&#xff1a;2.7.18-SNAPSHOT。 1. 法規&#xff08;Legal&#xff09; 2. 獲取幫助&#xff08;Getting Help&#xff09; 3. 文檔概述&#xff08;Documentation Overview&#xff09; 4. 開始使用&#xff08;Getting Sta…

BUUCTF---另外一個世界1

1.這是一道雜項題&#xff0c;也是我覺得最值得記錄的一道題。 2.話不多說&#xff0c;題目描述&#xff08;真的是另一個世界&#xff09; 3.下載附件&#xff0c;是一張圖片 4.嘗試了查看屬性&#xff0c;以及在記事本中打開看看有沒有什么有用的信息&#xff0c;發現沒什么…

FaceBook獲取廣告數據

1、訪問 廣告管理工具 確認自己登陸的賬號下面能看到戶。 ? 2、使用 圖譜Api探索工具 生成用戶短期口令 ? 3、get請求(或者瀏覽器直接打開)訪問&#xff1a; https://graph.facebook.com/v19.0/me?fieldsid,name, email&access_token{上一步生成的口令} ? 4、短期…

c# 獲取源碼路徑與當前程序所在路徑

獲取源碼路徑 private static string GetFilePath([CallerFilePath] string path null) {return path;}//當程序所在路徑string str67 System.Environment.CurrentDirectory;//源碼路徑 var path GetFilePath();var directory Path.GetDirectoryName(path);參考

Vue2:用node+express寫一個輕量級的后端服務

1、桌面創建demo文件夾 進入demo&#xff0c;執行如下命令 npm init輸入名稱&#xff1a; test_server然后一路回車 2、安裝express框架 npm i express3、新建server.js 在demo文件夾中&#xff0c;新建server.js const express require(express) const app express()…

2023年12月CCF-GESP編程能力等級認證Scratch圖形化編程三級真題解析

一、單選題(共15題,共30分) 第1題 現代計算機是指電子計算機,它所基于的是( )體系結構。 A:艾倫圖靈 B:馮諾依曼 C:阿塔納索夫 D:埃克特-莫克利 答案:B 第2題 默認小貓角色,執行下列程序,舞臺上會看到? ( ) A: B: C: D: 答案:C

干凈的語料沒有免疫力嗎?

干凈的語料指的是沒有雜音、無污染、無錯誤的語言材料。雖然干凈的語料本身沒有免疫力&#xff0c;但可以提供給機器學習算法或自然語言處理模型&#xff0c;幫助提高其性能和準確性。通過使用干凈的語料&#xff0c;可以降低噪聲干擾&#xff0c;減少模型的誤差&#xff0c;提…

Java類加載器 和 雙親委派【詳解】

一.類加載器&#xff1a; 由JDK提供的&#xff0c;用于加載一些資源文件到JVM內存里的一項技術。主要是加載class文件到內存&#xff0c;也可以加載一些資源文件。 2.JDK提供了三個類加載器&#xff1a; BootstrapClassLoader&#xff1a;引導類加載器&#xff0c; 是c語言編寫…

LightGBM高級教程:高級特征工程

導言 特征工程是機器學習中至關重要的一部分&#xff0c;它直接影響到模型的性能和泛化能力。在LightGBM中進行高級特征工程可以進一步提高模型的效果。本教程將詳細介紹如何在Python中使用LightGBM進行高級特征工程&#xff0c;并提供相應的代碼示例。 1. 特征交叉 特征交叉…

界面控件DevExpress .NET MAUI v23.2新版亮點 - 擁有全新的彩色主題

DevExpress擁有.NET開發需要的所有平臺控件&#xff0c;包含600多個UI控件、報表平臺、DevExpress Dashboard eXpressApp 框架、適用于 Visual Studio的CodeRush等一系列輔助工具。屢獲大獎的軟件開發平臺DevExpress 今年第一個重要版本v23.1正式發布&#xff0c;該版本擁有眾多…

python鏈接數據庫,實現數據增刪改查

要在Python中鏈接數據庫并實現數據的增刪改查&#xff0c;需要使用數據庫的API&#xff08;Application Programming Interface&#xff09;。以下是一個示例&#xff0c;演示如何使用Python的SQLite3模塊連接并操作數據庫&#xff1a; 安裝SQLite3模塊&#xff08;如未安裝&a…

如何克隆樹莓派系統到較小的硬盤/SD卡上(如何分區、設置修復引導)

最近有個老固態硬盤空下來了&#xff0c;雖然寫入速度沒那么快&#xff0c;但是足夠滿足千兆網絡了&#xff0c;所以我就想把現在給樹莓派使用的固態硬盤換下來。由于一些設置很浪費時間&#xff0c;所以我不打算重裝系統。此外這個老固態是 120GB 的&#xff0c;要小于正在使用…

redis實現分布式全局唯一id

目錄 一、前言二、如何通過Redis設計一個分布式全局唯一ID生成工具2.1 使用 Redis 計數器實現2.2 使用 Redis Hash結構實現 三、通過代碼實現分布式全局唯一ID工具3.1 導入依賴配置3.2 配置yml文件3.3 序列化配置3.4 編寫獲取工具3.5 測試獲取工具 四、運行結果 一、前言 在很…

Linux運維_Bash腳本_部署安裝DocBook-XML-4.5(XML-DTD)

Linux運維_Bash腳本_部署安裝DocBook-XML-4.5(XML-DTD) Bash (Bourne Again Shell) 是一個解釋器&#xff0c;負責處理 Unix 系統命令行上的命令。它是由 Brian Fox 編寫的免費軟件&#xff0c;并于 1989 年發布的免費軟件&#xff0c;作為 Sh (Bourne Shell) 的替代品。 您可…

leetcode 熱題 100_最長連續序列

題解一&#xff1a; 哈希表&#xff1a;找連續最長的數字序列&#xff0c;很容易聯想到排序&#xff0c;但排序的時間復雜度O(nlogN)過大&#xff0c;判題容易超時。因此我們需要使用哈希表來快速查找&#xff0c;序列中是否存在與某個數相鄰的數。用HashSet建立哈希表并去重&a…

【Javascript編程實操02】1、判斷一個年份是閏年還是平年 2、找到三個數中最小的數

目錄 前言 1、判斷一個年份是閏年還是平年 原理&#xff1a; 代碼&#xff1a; 實現效果&#xff1a; 2、找到三個數中最小的數 流程圖&#xff1a; 代碼&#xff1a; 實現效果&#xff1a; 總結 前言 本次繼續針對Javascript階段的if...else...的實操練習&#xff0…

IDEA 配置股票插件

IDEA配置股票基金實時查看插件&#xff0c;步驟如下&#xff1a; 打開Settings&#xff0c;找到Plugins&#xff0c;在Marketplace中搜索&#xff1a;Money Never Sleeps&#xff0c;如下圖所示&#xff1a; Money Never Sleeps是IntelliJ IDEA平臺插件. 支持查看股票實時行情…