【粉丝福利社】C++趣味编程及算法入门 全国青少年软件编程等级考试与信息学竞赛通关指南

标题详情
作者简介愚公搬代码
头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,亚马逊技领云博主,51CTO博客专家等。
近期荣誉2022年度博客之星TOP2,2023年度博客之星TOP2,2022年华为云十佳博主,2023年华为云十佳博主等。
博客内容.NET、Java、Python、Go、Node、前端、IOS、Android、鸿蒙、Linux、物联网、网络安全、大数据、人工智能、U3D游戏、小程序等相关领域知识。
欢迎👍点赞、✍评论、⭐收藏


🚀前言

小朋友们,当你们翻开这本书的时候,你们即将步入一个新的世界——编程的世界,开启一段新的征程——编程之旅。编程就是编写程序。在学习编程之前,小朋友们可能会疑惑:什么是程序?为什么要学习编程?

首先,计算机已经深入我们的日常生活,与小朋友们的学习、生活和爸爸妈妈的工作息息相关。这里所说的“计算机”,是指广义上的能存储数据、进行计算的设备。计算不仅包括你们通常理解的算术运算,还包括更广泛的数据处理。现在,小朋友们教室里的多媒体一体机,小区里的门禁系统,家里的指纹锁、密码锁、扫地机器人、洗衣机、微波炉,还有你们玩的平板电脑、手机等电子设备里是不是都有程序呀?为了让这些“计算机”按照我们设计的模式和功能工作,我们需要为它们设计指令或代码,这些代码就构成了程序。

其次,为什么要学习编程呢?你们身处智能时代,每天都在跟智能设备打交道。为了了解这些智能设备的工作原理,以便今后设计出更好的、更智能的程序,你们需要学习编程,这样你们才能适应这个时代,为你们自己和社会创造更好的未来。编写一个正确的、强大的、智能的程序,是一项非常具有挑战性的工作。学习编程是一项充满乐趣、富有意义、非常有用的活动。学习编程能训练数学思维、逻辑思维、算法思维、编程思维,这些思维能力在学习其他课程时也会用到。

小朋友们,摆在你们面前用来学习编程的电脑,是一台真正意义上的计算机。从世界上第一台计算机研制出来到现在,已经快80年了,编程语言也有近80年的历史。在这个过程中,无数的计算机科学家做出了极大的贡献,你们才有机会使用这台设计精致、功能强大、使用起来非常便利的计算机。

小朋友们,你们将要学习的C 编程语言,是一门高级语言,它非常接近于自然语言(英语),而且其中的一些编程思维在你们的生活和学习中往往能找到触类旁通的例子。因此,为了帮助你们理解本书涉及的编程思维,本书往往以人物对话,或生活和学习中的例子和场景来引出每章内容。本书中出现了以下人物原型。

哥哥王抱一,是树人小学四年级(5)班的一名学生,从小接触各种电子设备,喜欢动漫,也正在用这本书学习C 编程。

妹妹王致柔,是树人幼儿园大班的一名学生,喜欢搭积木。

抱一在学习编程的过程中,致柔经常过来“捣乱”,她也学到了一些浅显的编程知识。

妈妈是一名警察,日常生活中经常需要用到手机,工作中经常需要用到电脑、警用智能设备。

爸爸是一名大学老师,是计算机专业的博士,主要教编程课、算法课,指导大学生参加各类程序设计大赛,平时也教小朋友学习编程,擅长Python语言、C 语言和算法。

本书的一些故事发生在树人小学、听蓝湾小区、王抱一家里、U城天街商业街。树人小学位于听蓝湾小区西南方向500米,树人小学的旁边是树人幼儿园。小区东面,一路之隔,就是一个很大的商业街——U城天街。本书中的很多故事发生在爸爸送抱一和致柔上学的路上、在爸爸妈妈和两个孩子逛U城天街时、在小区散步时……

小朋友们,你们在学习编程的过程中,可能会遇到各种各样的困难,这是再正常不过的事情。在老师、家长的帮助下,你们将逐步克服这些困难,甚至能独立地解决一些问题,并在这个过程中收获极大的乐趣。每做出一道编程题,拿到一次等级考试的证书,参加一次编程竞赛,你们都将收获满满的成就感。

最后,希望小朋友们能喜欢上这本书,通过这本书开启奇妙的编程之旅。

🚀一、C++趣味编程及算法入门 全国青少年软件编程等级考试与信息学竞赛通关指南

本文送出的书籍是这本:

在这里插入图片描述

🔎1.编辑推荐

1.直击考试核心:本书专为全国青少年软件编程等级考试(C语言)一级、二级及信息学竞赛打造,全面覆盖考试要点,为读者提供一站式备考方案。
2.趣味式教学:简洁的代码、生动的文字、通俗的比喻,告别乏味的编程学习,全书融入趣味编程案例和和笔者亲自授课的700个教学视频,让编程学习变得生动有趣。
3.学与练完美结合:本书附带练习系统,并搭配了600道精选习题,有效检验学习效果。

🔎2.内容简介

本书是一本专门为中小学生编写的C++编程及算法入门教材。本书由浅入深地讲解了C++语言基础知识,以及编程解题常用的方法和基础算法。每章都是由一个小故事来引出编程思维。书中的案例和练习均由作者精心设计,并与生活和学习紧密结合。本书也介绍了各种有趣的计算机知识,并涵盖了中国电子学会青少年软件编程等级考试(C语言)一级和二级考试的知识点。本书配备了完善的题库、课件、教学视频等资源,可以作为中小学编程社团的教材,也可以作为少儿编程培训机构的培训教材,还可以作为少儿编程等级考试和编程竞赛的入门教材。

🔎3.作者简介

王桂平,重庆交通大学计算机科学与技术专业副教授/硕导,本、硕、博均毕业于重庆大学,曾先后担任重庆交通大学计算机系、大数据与AI系的副系主任。2003年在浙江财经大学开始从事大学生程序设计竞赛指导工作,是国内最早从事大学生程序设计竞赛指导的一批教练。

周祖松,中学信息技术高级教师、重庆市育才中学信息学竞赛总教练、NOI金牌指导教师。曾多次在全国信息学冬令营和全国信息学竞赛指导教师培训授课。现担任中国计算机学会中小学计算机教育研讨会(WCET)副主席。穆云波,任职于重庆市电子学会,长期从事青少年编程教学平台建设、课程建设和等级考试推广,具有丰富的教学经验。

葛昌威,毕业于重庆交通大学数据科学与大数据技术专业,曾获得第13届蓝桥杯大赛全国总决赛一等奖、第14届蓝桥杯大赛全国总决赛二等奖、第48届国际大学生程序设计大赛香港站铜奖。

🔎4.产品特色

在这里插入图片描述

🔎5.目录

1章 什么是程序?
1.1 从生活中的场景说起
1.2 编写程序的工具
1.3 程序的编写、编译和运行
1.4 在线评测系统
1.5 案例1Hello world!
1.6 案例2:时间换算(11.7 案例3:输出杨辉三角(11.8 练习1:用cout语句输出星号菱形
1.9 练习2:小学比幼儿园远多少米
1.10 练习3:输出数字螺旋矩阵(11.11 拓展阅读:C 关键字
1.12 计算机小知识:Hello world程序
1.13 总结
第2章 变量是一个魔法盒
2.1 记录身高和体重
2.2 用字母代表人、物或数据
2.3 常量和变量
2.4 数据类型
2.5 案例1:求矩形的面积和周长(12.6 案例2:超市购物
2.7 案例3:变量是一个魔法盒
2.8 练习1:长身高
2.9 练习2:剩余座位
2.10 练习3:需要多少块砖
2.11 拓展阅读:基本的数据类型
2.12 计算机小知识:“缺斤少两”的U2.13 总结
第3章 数据从何而来——输入
3.1 更强大的程序
3.2 案例1:求女生的人数
3.3 案例2:时间换算(23.4 案例3:交换两个变量的值(13.5 练习1:交换两个变量的值(23.6 练习2:求矩形的面积和周长(23.7 练习3:速度单位换算(13.8 拓展阅读:在线评测系统的工作原理
3.9 计算机小知识:人和计算机是怎么交互的
3.10 总结
第4章 让计算机帮我们做算术题
4.1 从买酸奶说起
4.2 运算、运算符和表达式
4.3 算术运算符和算术表达式
4.4 商和余数
4.5 除以10、对10取余
4.6 案例1:时间换算(34.7 案例2:赋值运算符练习
4.8 案例3:报数游戏
4.9 练习1:小实验——前置 和后置
4.10 练习2:数字魔术——三位数还原
4.11 练习3:三位数的数字之和
4.12 拓展阅读:运算符的优先级和结合性
4.13 计算机小知识:CC 名称的由来
4.14 总结
第5章 精确到小数的运算
5.1 从“打折”说起
5.2 圆的周长及圆周率
5.3 案例1:速度单位换算(25.4 案例2:折扣
5.5 案例3:求长方体的表面积和体积
5.6 练习1:分数→无限循环小数
5.7 练习2:求正方形和圆的面积(15.8 练习3:计算球的表面积和体积
5.9 拓展阅读:自动类型转换和强制类型转换
5.10 计算机小知识:实数与浮点数
5.11 总结
第6章 拿来主义——数学函数的使用
6.1 从工具箱玩具说起
6.2 平方和平方根、立方和立方根
6.3 案例1:勾股定理(16.4 案例22的n次方
6.5 案例3:立方体边长和球体直径
6.6 练习1:求正方形和圆的面积(26.7 练习2:浮点数不能精确表示
6.8 练习3:浮点数的整数商和余数
6.9 计算机小知识:复制粘贴是由谁提出来的?
6.10 总结
第7章 一路前行——顺序结构
7.1 从“把大象放进冰箱”说起
7.2 算法就是求解问题的步骤
7.3 程序控制结构
7.4 案例1:三角形的面积
7.5 案例2:鸡兔同笼问题(17.6 案例3:获奖比例
7.7 练习1:预测孩子的身高
7.8 练习2:华氏温度转摄氏温度
7.9 练习3:比赛成绩
7.10 计算机小知识:三种基本的程序控制结构
7.11 总结
第8章 分支结构——if语句
8.1 抱一和妈妈谈“条件”
8.2 条件判断和分支结构
8.3 C 语言中的分支结构
8.4 案例1:加分
8.5 案例2:求三个数的最大值
8.6 案例3:四边形的判断(方法18.7 练习13的倍数(方法1,取余运算符)
8.8 练习2:找座位
8.9 练习3:要不要开空调
8.10 总结
第9章 条件怎么形成——关系表达式和逻辑表达式
9.1 又高又壮的同学
9.2 判断和多个判断
9.3 逻辑“与”和逻辑“或”的例子
9.4 布尔型数据
9.5 案例1:语文和数学都考95分以上
9.6 案例2:三角形的判断
9.7 案例3:闰年的判断
9.8 练习1:复杂的逻辑判断
9.9 练习2:四边形的判断(方法29.10 练习3:身高达标吗
9.11 计算机小知识:BugDebug
9.12 总结
第10章 多分支与switch语句
10.1 又见“打折”
10.2 案例1:商场打折
10.3 案例2:CCF CSP-J/S比赛成绩
10.4 switch语句
10.5 案例3:VIP顾客等级
10.6 练习1:百分制成绩转五级制成绩
10.7 练习29岁男孩的身高标准
10.8 练习3:巧虎机器人(初级版)
10.9 计算机小知识:C 的版本
10.10 总结
第11章 知道要反复执行多少次——for循环
11.1 循环就是重复
11.2 循环结构
11.3 数列及相关问题
11.4 在程序中实现数学上的递推
11.5 案例1:输出广播体操的口令
11.6 案例2:求1 2 3 … n(111.7 案例3:求阶乘
11.8 练习1:求n个数的和
11.9 练习2:求1~n范围内3的倍数的和
11.10 练习3:求数列前n项和
11.11 计算机小知识:计算机的运算速度有多快
11.12 总结
第12章 依条件而循环——while循环和do-while循环
12.1 给足球打气的两种方式
12.2 while循环和do-while循环
12.3 永真循环、死循环
12.4 案例1:求1 2 3 … n(212.5 案例2:前n项和超过m
12.6 案例3:输出整数的每一位数
12.7 练习1:数列1, 1, 2, 1, 2, 3, 1, 2, 3, 4,…的第n项
12.8 练习23的倍数(方法2,求各位和)
12.9 练习3:等比数列第几项超过m
12.10 总结
第13章 一个结构套另一个结构——结构的嵌套
13.1 俄罗斯套娃玩具——嵌套
13.2 程序控制结构的嵌套
13.3 计数器和累加器
13.4 案例1:吃苹果
13.5 案例2:求整数中非零数字的个数
13.6 案例3:兔子问题——斐波那契数列(113.7 练习1:求n个数的最大值
13.8 练习2:闰年的个数
13.9 练习3:求等差数列的和
13.10 总结
第14章 退出循环和跳过当前这一轮循环
14.1 抄写古诗和数字2014.2 退出循环和跳过当前循环
14.3 案例1:质数的判定(break语句)
14.4 案例2:输出1100中的质数
14.5 案例3:用while(true)循环求数列和
14.6 练习1:数列1, 2, 3, 2, 3, 4
14.7 练习2:斐波那契数列(214.8 练习3:斐波那契数列(314.9 总结
第15章 循环包含循环——循环的嵌套
15.1 九九乘法表的规律
15.2 循环的嵌套
15.3 枚举算法的思想
15.4 案例1:数字之和(115.5 案例2:输出数字图案
15.6 案例3:鸡兔同笼问题(215.7 练习1:统计1N范围内的质数个数
15.8 练习2:百钱百鸡问题
15.9 练习3:勾股定理(215.10 总结
第16章 存多个数据的容器——(一维)数组
16.1 带格子的收纳盒——数组的引入
16.2 数组和元素
16.3 案例1:某年某月的天数
16.4 通过循环处理一维数组
16.5 案例2:斐波那契数列(416.6 案例3:数列1, 2, 3, 2, 3, 4, 3, 4, 5, 4, 5, 6,…的前n项和
16.7 练习1:数列1, 1, 2, 1, 2, 3, 1, 2, 3, 4,…的前n项和(116.8 练习2:将一个正整数逆序
16.9 练习3:求一组数的最值和平均值
16.10 总结
第17章 表格型容器——二维数组
17.1 方格作业本——二维数组的引入
17.2 用数组存储多个有关联的数据
17.3 二维数组就是二维表格
17.4 用循环处理二维数组
17.5 案例1:求二维数组中的最大元素
17.6 案例2:求一个矩阵中的鞍点
17.7 案例3:输出数字螺旋矩阵(217.8 练习1:二维1, 2, 3, 2, 3, 4, 3, 4, 5, 4,17.9 练习2:统计矩阵中各类数的个数
17.10 练习3:输出杨辉三角形(217.11 拓展阅读:三维数组
17.12 总结
第18章 非数值型数据——字符和字符串
18.1 从身份证号说起
18.2 字符和字符串
18.3 ASCII编码
18.4 字符、字符串和字符数组
18.5 用字符数组读入一个整数
18.6 案例1:字符转换——模运算符
18.7 案例2:简单的字符串加密
18.8 案例3:统计各类字符的个数
18.9 练习1:数字之和(218.10 练习2:计算单词的得分
18.11 练习3:提取连续的数字字符串
18.12 计算机小知识:汉字编码
18.13 总结
第19章 “逢十进一”的由来——进位计数制
19.1 开关面板——二进制的引入
19.2 数位和计数单位
19.3 进位计数制
19.4 二值的表示
19.5 二进制、十六进制加减运算
19.6 计量数据大小的单位
19.7 用二进制数数
19.8 理解整型(int, long long)的范围
19.9 案例1:猜数字魔术(心灵感应魔术)
19.10 案例2:以八进制、十六进制输出数据
19.11 案例3:以八进制、十六进制输入数据
19.12 二进制、八进制和十六进制的相互转换
19.13 练习1:生日蜡烛
19.14 练习2:二进制数
19.15 计算机小知识:程序员节
19.16 总结
第20章 进制转换问题
20.1 单位换算问题
20.2 一斤十六两
20.3 进制的转换
20.4 案例1:十进制换位运算
20.5 案例2:其他进制转十进制
20.6 案例3:十进制转其他进制
20.7 练习1:数码1的位置
20.8 练习2:字节内容
20.9 练习3:雷劈数
20.10 总结
第21章 字符及字符串处理
21.1 用草串着卖的鸡蛋
21.2 字符串处理函数
21.3 字符串类string
21.4 案例1:计算两个字符串的相关性
21.5 案例2:校验和
21.6 案例3:从整数中提取出4个字符
21.7 练习1:比较大整数的大小关系
21.8 练习2:输出月份(二维字符数组)
21.9 拓展阅读:万能头文件
21.10 总结
第22章 通过函数实现功能分解
22.1 设计师的梦想
22.2 函数就是功能
22.3 函数的分类
22.4 案例1:质数的判定(用函数实现)
22.5 案例2:求两个数的较大者(用函数实现)
22.6 案例3:数组元素逆序(用函数实现)
22.7 练习1:斐波那契数列(522.8 练习2:区间内所有质数(用函数实现)
22.9 练习3:闰年的判定(用函数实现)
22.10 总结:如何设计函数的参数和返回值
22.11 计算机小知识:结构化程序设计
22.12 总结
第23章 递归及递归函数设计
23.1 从前有座山
23.2 案例1:递归求阶乘
23.3 递归函数
23.4 案例2:猴子吃桃问题
23.5 案例3:求最大公约数
23.6 练习1:斐波那契数列(623.7 练习2:角谷猜想(用递归实现)
23.8 练习3:数字之和(323.9 总结
第24章 简单排序算法
24.1 从顺序说起
24.2 排序及排序函数
24.3 字典序
24.4 案例1:插入排序
24.5 案例2:冒泡排序
24.6 案例3:简单选择排序
24.7 练习1:字符串排序
24.8 练习2:坐电梯取钻石游戏
24.9 练习3:字符排序
24.10 总结
第25章 排序问题及处理
25.1 致柔的游戏规则
25.2 sort排序函数
25.3 案例1:谁在中间
25.4 案例2:前20%和后20%
25.5 练习1:合影效果
25.6 练习2:单词重组
25.7 总结
第26章 如何高效地查找?
26.1 折纸和剪线
26.2 查找
26.3 案例1:顺序查找
26.4 案例2:二分查找
26.5 练习1:猜数字游戏
26.6 关于二分查找的相关函数
26.7 练习2:有多少个元素比b小(大)
26.8 总结
第27章 结构体
27.1 设计一种新的笔
27.2 自定义数据类型——结构体
27.3 一级排序和二级排序
27.4 排序时指定排序规则——cmp函数
27.5 案例1:成绩排序
27.6 案例2:按照个位数排序
27.7 练习1:序列排序
27.8 练习2:病人排队
27.9 总结
第28章 枚举算法
28.1 送你一个智慧
28.2 枚举算法的思想及实现要点
28.3 算法及算法的效率
28.4 案例1:求x2 \ y2 = n的正整数解
28.5 案例2:既是平方数也是立方数
28.6 练习1:验证哥德巴赫猜想
28.7 练习2:和为给定数
28.8 计算机小知识:1秒钟100 000 000次运算
28.9 总结
第29章 模拟算法
29.1 从模拟考试说起
29.2 模拟算法的思想及实现要点
29.3 案例1:出列游戏
29.4 案例2:单身贵族游戏
29.5 练习1:爬动的蠕虫
29.6 练习2:求一个整数的回文数步数
29.7 总结
第30章 数据结构基础知识
30.1 结束不是终止,而是一个新的开始
30.2 数据结构基本概念
30.3 标准模板库
30.4 向量
30.5 队列
30.6 案例1:数列1, 1, 2, 1, 2, 3, 1, 2, 3, 4,…前n项和(230.7 案例2:输出杨辉三角形(用向量实现)
30.8 练习1:出列游戏(用队列实现)
30.9 练习2:机器翻译
30.10 总结

需要完全了解本书可以看下面:

链接🔗:地址《C++趣味编程及算法入门》


🚀感谢:给读者的一封信

亲爱的读者,

我在这篇文章中投入了大量的心血和时间,希望为您提供有价值的内容。这篇文章包含了深入的研究和个人经验,我相信这些信息对您非常有帮助。

如果您觉得这篇文章对您有所帮助,我诚恳地请求您考虑赞赏1元钱的支持。这个金额不会对您的财务状况造成负担,但它会对我继续创作高质量的内容产生积极的影响。

我之所以写这篇文章,是因为我热爱分享有用的知识和见解。您的支持将帮助我继续这个使命,也鼓励我花更多的时间和精力创作更多有价值的内容。

如果您愿意支持我的创作,请扫描下面二维码,您的支持将不胜感激。同时,如果您有任何反馈或建议,也欢迎与我分享。

在这里插入图片描述

再次感谢您的阅读和支持!

最诚挚的问候, “愚公搬代码”

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

愚公搬代码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值