c語言-指針(數組)練習2

題目:將數組中n個元素按逆序存放并打印出來,使用函數封裝與指針

思路:

1.定義一個數組arr[5]和用于存放數組大小(數組大小通過sizeof關鍵字來進行計算)的變量len;

2.創建三個函數initArr、printArr、revangeArr,它們的形參都需要接收數組的首地址和大小,因此都需要定義兩個形參(*pArr、len)。

? ? ? ? 2.1 initArr的作用是獲取鍵盤輸入的值并通過循環遍歷進數組

? ? ? ? 2.2 printArr的作用是將數組中的元素遍歷并打印出來;

? ? ? ? 3.3 revangeArr的作用是將數組中的元素進行逆序存放。

? ? ? ? ? ? ? ? 3.3.1 逆序存放的思路:

? ? ? ? ? ? ? ? 首先我們要考慮到數組中元素是奇數個還是偶數個,是否這兩種情況的算法都不同。

? ? ? ? ? ? ? ? 奇數:奇數個元素的話我們就需要定到中間那個元素,且這個元素不需要交換。舉個例

? ? ? ? ? ? ? ? ? ? ? ? ? arr[5]={11,22,33,44,55},這個數組中間那個元素是33,對應下標是2,因此只需要? ? ? ? ? ? ? ? ? ? ? ? ? ? 定義一個 i < len/2,j=len-1-i。如下圖:

? ? ? ? ? ? ? ? ? ?偶數:偶數的元素思路與奇數一樣,同樣是定位到中間,如下圖:

????????????????因此,不管奇數還是偶數個元素的數組,利用循環時需要的條件都一致。有了這個思路,那么就只需要再定義一個變量用于值交換時的媒介即可

3.由于都是對數組地址進行操作,因此函數不需要返回值,函數類型就可以是空類型void。

4.在main函數中調用這三個函數就能得到對應的結果

具體代碼如下圖:

具體編譯結果如下圖:

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

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

相關文章

Redis服務器

Redis&#xff0c;一款Key-Value型內存數據庫 常用于網站開發場景 Redis服務器只發布了Linux版本 Redis服務器安裝&#xff0c;2種辦法 自動安裝 apt install redis-server手動編譯安裝 從官網下載源碼&#xff0c;編譯&#xff0c;部署 1 安裝redis apt install redis-s…

LeetCode 第91題:解碼方法

題目描述&#xff1a; 一條包含字母A-Z的消息通過以下映射進行了編碼 1-A ...... 26-Z 要特別注意&#xff0c;11106可以映射為AAJF或KJF 06不是一個合法編碼 給你一個只含數字的非空字符串s&#xff0c;請計算并返回解碼方法的總數。如果沒有合法的方法解碼整個字符串&#xf…

Rocky Linux 9 源碼包安裝Mysql8

Rocky Linux 9 源碼包安裝Mysql8 大家好我是星哥&#xff0c;之前介紹了&#xff0c;Rocky Linux 9 源碼包安裝Mysql5.7。 本文將介紹如何在Rocky Linux 9操作系統上&#xff0c;從源碼一步步安裝MySQL 8&#xff0c;為您提供一個穩定、高效且可控的數據庫解決方案。 為什么…

AI小智項目全解析:軟硬件架構與開發環境配置

AI小智項目全解析&#xff1a;軟硬件架構與開發環境配置 一、項目整體架構 AI小智是一款基于ESP32的智能物聯網設備&#xff0c;集成了語音交互、邊緣計算等功能。整體系統架構如下&#xff1a; 終端設備&#xff1a;ESP32模組作為核心通信方式&#xff1a; WebSocket實現實…

設計模式之上下文對象設計模式

目錄 一、模式介紹 二、架構設計 三、Demo 示例 四、總結 一、模式介紹 上下文對象&#xff08;Context Object&#xff09;模式 最早由《Core J2EE Patterns》第二版提出&#xff0c;其核心目標是在多層或多組件間共享與當前作用域&#xff08;如一次請求、一次會話、一次…

@Linux服務器加域退域

文章目錄 **一、加入Active Directory域****1. 準備工作****2. 配置步驟****步驟1&#xff1a;驗證網絡和DNS****步驟2&#xff1a;發現域****步驟3&#xff1a;加入域****步驟4&#xff1a;配置SSSD&#xff08;可選&#xff09;****步驟5&#xff1a;配置sudo權限&#xff08…

鴻蒙系統(HarmonyOS)4.2 設備上實現無線安裝 APK 并調試

在鴻蒙系統&#xff08;HarmonyOS&#xff09;4.2 設備上實現無線安裝 APK 并調試的步驟與 Android 類似&#xff0c;但需注意鴻蒙系統的特殊設置。以下是詳細操作指南&#xff1a; 鴻蒙系統特殊準備 開啟開發者選項&#xff1a; - 設置 > 關于手機 > 連續點擊"H…

MyBatis時間戳查詢實戰指南

在 MyBatis 中通過時間戳&#xff08;Timestamp&#xff09;作為查詢條件&#xff0c;需注意數據庫時間類型與 Java 類型的映射。以下是具體實現方式&#xff1a; 一、Java 實體類與數據庫字段映射 實體類定義 使用 java.sql.Timestamp 或 java.time.LocalDateTime&#xff08;…

【Verilog硬件語言學習筆記4】FPGA串口通信

串口通信是系統設計中比較基部分&#xff0c;其原理其實也很通俗易懂。單次建立通信會傳輸8個bit&#xff0c;其時序也很簡單&#xff0c;這里就不再贅述了。其對應的實例代碼如下所示&#xff1b; 首先是接受部分&#xff08;因為我的變量命名也很規范&#xff0c;通俗易懂&a…

Go 語言安裝教程(Windows 系統)

2025年07月02日 準備工作 確認系統為 Windows 7 及以上版本&#xff08;推薦 Windows 10/11&#xff09;。64 位系統選擇 amd64 版本安裝包&#xff0c;32 位系統選擇 386 版本。確保安裝目錄&#xff08;默認 C:\Program Files\Go\&#xff09;有至少 1GB 空間。 下載安裝包…

接口測試之postman

一、Postman功能簡介 3天精通Postman接口測試&#xff0c;全套項目實戰教程&#xff01;&#xff01; Postman是由Postdot Technologies公司打造的一款功能強大的調試HTTP接口的工具。在做接口測試的時候&#xff0c;Postman相當于一個客戶端&#xff0c;它可以模擬用戶發起的各…

【記錄】Ubuntu安裝Mysql

本文記錄Ubuntu系統下安裝Mysql 1 查看系統信息 lsb_release -a 2 使用apt下載安裝Mysql 1 打開終端,首先更新你的系統包索引,以確保所有包都是最新的 sudo apt update 2 安裝mysql服務器 sudo apt install mysql-server (也可以選擇對應的mysql-server 版本) 3 查看mysql狀…

【深度學習:進階篇】--4.1.循環神經網絡(改進)

RNN存在的問題&#xff1a;梯度爆炸&#xff0c;長期依賴參數量過大等問題 目錄 1.GRU(門控循環單元) 1.1.什么是GRU 1.2.直觀理解 1.3.本質解決問題 2.LSTM(長短記憶網絡) 2.1.作用 3.結構擴展與效率優化? 1.GRU(門控循環單元) 2014年&#xff0c;出現的算法&#x…

中心化錢包安全方案

先來看獨立的密鑰安全技術 1 自建或單租戶 CloudHSM 優點&#xff1a;密鑰永不出硬件&#xff0c;無法導出&#xff0c;只能對外提供公鑰。 交易時&#xff0c;外部應用把消息哈希傳進去簽名&#xff0c;再把簽好名的結果拿出來用。 這種方式安全性拉滿&#xff0c;但成本高、…

Android 實現底部彈窗

文章目錄在 Android 中創建優雅的底部選項彈窗 (BottomSheetDialogFragment) &#x1f4f1;第一步&#xff1a;設計底部彈窗的布局 &#x1f3a8;第二步&#xff1a;創建 BottomSheetDialogFragment 類 ??第三步&#xff1a;觸發并顯示底部彈窗 &#x1f680;在 Android 中創…

LAN8720 寄存器概覽和STM32 HAL庫讀寫測試

目錄 寄存器0x00:Basic Control Register&#xff08;BCR&#xff09;0x01:Basic Status Register&#xff08;BSR&#xff09; 連接測試寄存器讀寫測試 補充 寄存器 // 0x00:Basic Control Register&#xff08;BCR&#xff09; BIT15:Soft Reset 寫1復位&#xff0c;寫1之…

滲透測試深度分析:空密碼Administrator賬戶引發的安全風暴

滲透測試深度分析&#xff1a;空密碼Administrator賬戶引發的安全風暴0x01 測試背景 在內網滲透測試中&#xff0c;對Windows主機 192.168.1.98 使用 enum4linux 進行枚舉&#xff1a; enum4linux -u Administrator -p -a 192.168.1.98關鍵發現&#xff1a;Administrator賬戶空…

OpenCV CUDA模塊設備層-----高效地計算兩個 uint 類型值的帶權重平均值

操作系統&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 編程語言&#xff1a;C11 算法描述 OpenCV 的 CUDA 模塊&#xff08;cudev&#xff09; 中的一個設備端內聯函數&#xff0c;用于高效地計算兩個 uint 類型值的帶權重平均值。 該函…

[學習記錄]Unity毛發渲染[URP]-Shell基礎版

毛發&#xff0c;無論是人類的頭發、動物的皮毛&#xff0c;還是奇幻生物的絨毛&#xff0c;都是構成生命感和真實感不可或缺的元素。它對光線的獨特散射、吸收和反射&#xff0c;賦予了物體柔軟、蓬松、有生命力的質感。它不僅僅是讓角色看起來更“毛茸茸”那么簡單&#xff0…

數字孿生技術引領UI前端設計潮流:增強現實(AR)的集成應用

hello寶子們...我們是艾斯視覺擅長ui設計、前端開發、數字孿生、大數據、三維建模、三維動畫10年經驗!希望我的分享能幫助到您!如需幫助可以評論關注私信我們一起探討!致敬感謝感恩!一、引言&#xff1a;AR 與數字孿生融合的設計革新浪潮在體驗經濟與技術融合的雙重驅動下&…