GESP編程能力等級認證一本通(C++ 四級)

王桂平 張兵 鄭蘭

  • 出版商: 人民郵電
  • 出版日期: 2026-04-01
  • 定價: $419
  • 售價: $418
  • 語言: 簡體中文
  • 頁數: 248
  • ISBN: 7115691592
  • ISBN-13: 9787115691590
  • 相關分類: C++ 程式語言
  • 下單後立即進貨 (約4週~6週)

  • GESP編程能力等級認證一本通(C++ 四級)-preview-1
GESP編程能力等級認證一本通(C++ 四級)-preview-1

相關主題

商品描述

 “GESP編程能力等級認證一本通”是專門為中小學生編寫的一套學習C++編程和算法的圖書。本套圖書嚴格圍繞中國計算機學會(CCF)發布的《CCF編程能力等級認證標準C++&Python認證標準》而設計。

  本書對應C++四級,共15章,內容包括二維及多維數組、指針變量及應用、指針與數組的綜合應用、排序基本概念及sort函數的使用、結構體、函數進階、遞歸函數、遞推算法基礎、遞推算法進階、遞推與遞歸的綜合應用、簡單的排序算法、排序綜合應用、算法及算法復雜度、文件輸入/輸出、異常處理機制。

  本書配備了題庫、課件、課程視頻(在線)等資源,可用作中小學編程社團的教材,也可以作為青少年編程培訓機構的培訓教材,還可以作為青少年編程等級考試和編程競賽的入門參考書。

作者簡介

王桂平,計算機科學與技術專業博士、副教授、碩導。從 2003 年開始從事大學生程

序設計競賽指導工作,帶隊參加過浙江省、重慶市、四川省、廣東省大學生程序設計大賽,以及中國大學生程序設計大賽、國際大學生程序設計大賽、中國高校計算機大賽——團體程序設計天梯賽、藍橋杯大賽等各類程序與算法設計類賽事,指導的學生獲得國家級獎項 100 余項、省級獎項 1000 余項;主持省部級教學研究項目5 項(含重大項目 1 項),主持重慶市一流課程 1 門;以第一作者發表教學研究論文近20 篇;以第一作者發表科學研究論文 30 余篇,其中 SCI 論文 9 篇、EI論文 10 篇,主持省部級科研項目 3 項,主研國家級科研項目 3 項。著有《圖論算法理論、實現及應用》《程序設計方法及算法導引》《C++趣味編程及算法入門》《C++編程與

信息學競賽數學基礎》《信息學競賽教程》等多部圖書;多所中小學兼職信奧教練。

張兵,CCF GESP & PTA 自由度服務中心主任、重慶大學繼續教育學院家校社中心主任、國際人工智能奧林匹克學術活動中國區(NOAI)重慶組委會主任、“傲夢少年”聯盟負責人。在編程教育與信奧教育、青少年人工智能、青少年多元化成長路徑、醫工融合等領域均有深入研究。主導並參與了 1 項重慶市技術創新與應用示範項目、

1 項重慶市科技型企業技術創新與應用發展專項項目。

鄭蘭,重慶市第八中學校信息學競賽主教練,區級學科名師,重慶市中學骨幹教師,重慶市基礎教育教學資源評審專家庫成員,中國計算機學會WCET 委員,全國信息競賽優秀 NOI指導教師。指導學生參加全國青少年信息學奧林匹克競賽(NOI),其中 5 人榮獲金牌,4人進入國家集訓隊;指導學生參加全國青少年信息學奧林匹克聯賽(NOIP),其中 100 多人獲一等獎。

目錄大綱

第 1章 二維及多維數組 001

1.1 數組概述 001

1.2 二維數組的定義和引用 002

1.3 案例1:輸出楊輝三角形前n行 005

1.4 一維和二維字符數組 007

1.5 案例2:畫布裁剪(GESP真題) 007

1.6 案例3:黑白方塊(GESP真題) 009

1.7 矩陣中的特殊位置 011

1.8 矩陣的變換—轉置 012

1.9 練習1:矩陣的轉置 012

1.10 練習2:二階矩陣(GESP真題) 013

1.11 拓展:三維及多維數組 015

1.12 基礎知識練習(GESP真題) 016

第 2章 指針變量及應用 020

2.1 指針概述 020

2.2 指針變量的定義與引用 022

2.3 字符型指針變量 025

2.4 指針變量作函數參數 027

2.5 案例1:交換兩個數(函數和指針參數實現) 030

2.6 案例2: Fibonacci數列(函數帶回兩個答案) 033

2.7 案例3:四則運算(函數和指針參數實現) 034

2.8 練習1: 4個數輪換 035

2.9 練習2:平方根、立方根、平方和立方 036

2.10 基礎知識練習(GESP真題) 038

第3章 指針與數組的綜合應用 043

3.1 一維數組與指針變量 043

3.2 用數組名作函數參數 046

3.3 案例1:構造回文 047

3.4 網格狀地圖及相鄰位置的處理 049

3.5 案例2:荒地開墾(GESP真題) 050

3.6 案例3:排兵布陣(GESP真題) 052

3.7 練習1:查找數 055

3.8 前綴和數組 056

3.9 練習2:平衡子矩形(GESP真題) 058

3.10 二維數組與指針變量 060

3.11 指針高級內容 062

3.12 基礎知識練習(GESP真題) 063

第4章 排序基本概念及sort函數的使用 068

4.1 排序基本概念 068

4.2 排序函數sort的使用 068

4.3 字典序 070

4.4 案例1:整數排序(中間大兩頭小) 070

4.5 案例2:重排數字使整數最大 071

4.6 案例3:做題(GESP真題) 072

4.7 練習1:寶箱(GESP真題) 073

4.8 練習2:字符排序(GESP真題) 075

4.9 基礎知識練習(GESP真題) 076

第5章 結構體 078

5.1 結構體概述 078

5.2 結構體類型的聲明 079

5.3 結構體變量、指針、數組的定義 079

5.4 結構體變量、數組的初始化 081

5.5 結構體變量及成員的引用 081

5.6 用typedef聲明一種新類型名 082

5.7 案例1:按身高排序 083

5.8 案例2:數位排序 084

5.9 案例3:字符串排序(按得分高低排序) 086

5.10 練習1:按姓名排序 088

5.11 練習2:病人排隊 089

5.12 結構體其他知識 091

5.13 基礎知識練習(GESP真題) 093

第6章 函數進階 097

6.1 引用及引用類型參數 097

6.2 值的傳遞和地址傳遞 099

6.3 函數的嵌套調用 099

6.4 函數重載及有默認值的參數 100

6.5 全局作用域和局部作用域 101

6.6 案例1:絕對素數(GESP真題) 102

6.7 案例2:圖像壓縮(GESP真題) 103

6.8 案例3:進制轉換(GESP真題) 106

6.9 練習1:變長編碼(GESP真題) 108

6.10 練習2:相似字符串(GESP真題) 110

6.11 函數的設計總結 112

6.12 基礎知識練習(GESP真題) 112

第7章 遞歸函數 122

7.1 遞歸及遞歸函數 122

7.2 案例1:求階乘(遞歸函數) 123

7.3 案例2:遞歸求Fibonacci數列第n項 125

7.4 將較大規模的問題降為較小規模的問題 126

7.5 案例3:三角形的個數(1) 126

7.6 練習1:三角形的個數(2) 128

7.7 練習2:幸運數(GESP真題) 130

7.8 遞歸函數設計總結 132

7.9 基礎知識練習(GESP真題) 133

第8章 遞推算法基礎 134

8.1 遞推概述 134

8.2 遞推的四大要素 134

8.3 案例1:拼積木問題 135

8.4 案例2:放圓珠問題 136

8.5 二維遞推 137

8.6 案例3:網格路徑 138

8.7 練習1:新的兔子數列 140

8.8 練習2:過山車數 141

8.9 基礎知識練習(GESP真題) 143

第9章 遞推算法進階 148

9.1 部分位置受限的遞推問題 148

9.2 案例1:走臺階問題(部分臺階是壞的) 148

9.3 案例2:馬攔過河卒 150

9.4 遞推和其他算法的結合 152

9.5 案例3:猴子分桃子 153

9.6 練習1:Recamán(GESP真題) 155

9.7 練習2:踩方格 157

9.8 基礎知識練習(GESP真題) 159

第 10章 遞推與遞歸的綜合應用 160

10.1 遞推和遞歸總結 160

10.2 案例1:f(n)=Σf( j ), j為n的因數且j

10.3 案例2:矩陣變幻 162

10.4 遞歸存在的問題及解決方法 165

10.5 案例3:數的計算 167

10.6 練習1:漢諾塔遊戲 168

10.7 練習2:填幻方(GESP真題) 171

10.8 基礎知識練習(GESP真題) 172

第 11章 簡單的排序算法 173

11.1 來自生活中的算法思想 173

11.2 排序算法性能及評價 174

11.3 案例1:插入法排序 175

11.4 案例2:冒泡法排序 176

11.5 案例3:簡單選擇法排序 178

11.6 練習1:區間排序(GESP真題) 180

11.7 練習2:最少交換次數(GESP真題) 182

11.8 基礎知識練習(GESP真題) 184

第 12章 排序綜合應用 192

12.1 排序的應用 192

12.2 案例1:田忌賽馬(GESP真題) 192

12.3 案例2:最長連續段(GESP真題) 194

12.4 案例3:修建新的庫房 196

12.5 練習1:人以群分 198

12.6 練習2:排隊取水 199

12.7 基礎知識練習(GESP真題) 201

第 13章 算法及算法復雜度 204

13.1 算法的基本概念 204

13.2 評價算法優劣的標準 204

13.3 案例1:勾股數組合(a, b, b+1) 205

13.4 案例2:買地攻略 208

13.5 案例3:還剩多少人 211

13.6 算法效率的度量 212

13.7 算法時間復雜度的漸進分析和表示 213

13.8 最好、最壞和平均情況 214

13.9 基本的算法復雜度模型 215

13.10 基礎知識練習(GESP真題) 217

第 14章 文件輸入/輸出 219

14.1 文件輸入/輸出概述 219

14.2 ASCII文件和二進制文件 220

14.3 文件名和文件路徑 221

14.4 C語言中的文件輸入/輸出 222

14.5 C++語言中的文件輸入/輸出 226

14.6 基礎知識練習(GESP真題) 231

第 15章 異常處理機制 234

15.1 異常處理引入 234

15.2 C++語言中的異常處理機制 235

15.3 基礎知識練習(GESP真題) 238

附錄A 本書配套資源使用指南 242

附錄B 基礎知識練習答案 243

參考文獻 248