自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 收藏
  • 关注

原创 什么是函数?它的声明和定义

2025-04-03 15:26:43 78

原创 2、C++信奥赛九大排序算法:冒泡排序、选择排序、插入排序、希尔排序、计数排序、桶排序、堆排序、归并排序、快速排序,真正要让小孩子也能够看懂,持续更新(视频/图文)......

思路:5 7 2 1 6第一轮假设第一个元素下标为最小值下标,去和后面的元素进行比较,找到比它小的,最小值下标更新,直到找到最小值,最后交换元素,确定第一个最小值,以此类推时间复杂度:o(n^2)空间复杂度:o(1)稳定性:不稳定 如 20 20 5,第一个20会和5交换,此时两个相同大小的20位置发生了改变。

2025-04-01 23:26:01 121

原创 C++信奥赛数据结构与算法1:有东西但不多入门算法第一步,高精度加减乘除方法,醍醐灌顶,更新中......

2)模拟数学求除法过程,就是用上一位余数*10+当前数,对除数b进行每位求商、求余,开始默认余数为0。1)被除数使用字符串,将其转换成int数组,下标从1开始,使得逻辑跟顺畅。3)c数组从左->右 删除前导0;

2025-03-31 22:53:16 147

原创 C++07-1字符数组:字符串常用字符数组函数的总结,要让孩子都能懂的编程,信奥赛竞赛

在 C 和 C++ 中,字符数组用于存储字符串,有许多实用的函数可以对字符数组进行操作。

2025-03-27 21:26:36 398

原创 【C++信奥赛】输入输出流总结,AI时代学习编程并不难,要让孩子都能懂的编程

流就像是一条看不见的小河流,数据在里面流动。在电脑里,流就是数据从一个地方跑到另一个地方的过程。从键盘输入数据到电脑内存,这是输入流;从电脑内存把数据显示到屏幕上,这就是输出流。而且,流就像有序排队的小火车,数据一个接一个按顺序流动。函数名所属库输入类型处理空白符换行符处理缓冲区残留适用场景scanf<cstdio>基本数据类型(如intfloat等)和格式化输入跳过前导空白符不处理换行符,将其留在缓冲区可能残留换行符或未读取的字符需要严格格式化输入,与 C 代码兼容cin。

2025-03-27 21:12:57 1068

原创 C++04函数-2与整数相关的函数:6、3251:练41.3 计算星期几,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

两个正整数a,b,中间用单个空格隔开。(0<a≤100,0<b≤10000)假设今天是星期日,那么过a的b次方天之后是星期几?一个字符串,代表过ab天之后是星期几。

2025-03-25 15:13:42 255

原创 C++04函数-2与整数相关的函数:5、3250:练41.2计算2的幂,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

给定非负整数 n,求 2的n次方。一个整数,即 2 的 n次方。一个整数,0≤n<31。

2025-03-25 15:09:32 78

原创 C++04函数-2与整数相关的函数:4、3249:练41.1比分数,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

在最近进行的考试中,小明考了a分,小科考了b分,那他们两个的分差(大减小)是多少呢。输入一行,包含两个整数a,b。对于100%的数据1≤a,b≤10的9次方。输出一行,包含一个整数,表示答案。

2025-03-25 15:06:37 199

原创 C++04函数-2与整数相关的函数:3、3248:【例41.3】 最小数和最大数,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

第一行一个整数n(1≤n≤1),表示数据的个数。输入 n 个数,找到其中最小的数和最大的数。第二行n个整数ai(1≤ai≤10000)。两个整数,分别表示最小的数和最大的数。

2025-03-25 15:03:21 99

原创 C++04函数-2与整数相关的函数:2、3247【例41.2】 绝对值排序,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

输入包含 3 个int范围内的整数,用空格隔开。若两个数字的绝对值一样,则比较两个数字的大小。输入 3 个整数,按绝对值从小到大排序。输出一行,包含三个数,用空格隔开。

2025-03-25 15:00:32 108

原创 C++04函数-2与整数相关的函数:1、3246【例41.1】 乘方计算,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

给出一个整数a和一个正整数n(1000000≤a≤1000000,1≤n≤10000),求乘方a的n次方,即乘方结果。最终结果的绝对值不超过1000000。一个整数,即乘方结果。题目保证最终结果的绝对值不超过1000000。一行,包含两个整数a和n。

2025-03-25 14:56:32 173

原创 2025年莆田市专项选拔赛3月份C++线上考试第一轮考察范围、知识总结、常用函数总结、高频易错点和注意事项

顺序结构是程序执行的基本结构,代码按照编写的顺序依次执行。这部分主要涉及变量的定义、数据的输入输出以及基本的算术运算。变量定义:明确不同数据类型(如intfloatdoublechar等)的变量定义方式,例如int a = 10;。数据输入输出:使用cin和cout进行标准输入输出操作,如cin >> a;和。算术运算:掌握加()、减()、乘()、除()、取模()等基本运算符的使用。cin:用于从标准输入读取数据,如cin >> num;。cout:用于向标准输出打印数据,如" << endl;。

2025-03-21 07:45:00 960 1

原创 C++04函数-1与字符相关的函数:6、3244:练40.2 打印字符,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

相信大家一定都知道大名鼎鼎的 ASCII 码,这次给你的任务是输入数字(表示 ASCII 码),输出相对应的字符信息。接下来包括 T个正整数,由空白符分割。(空白符包括空格、换行、制表符)在一行内输出相应的字符信息。(注意不要输出任何多余的字符)第一行为一个整数 T(1≤T≤1000)。这些整数不会小于 32。

2025-03-19 22:04:19 149 1

原创 C++04函数-1与字符相关的函数:5、3244:练40.2 打印字符,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

一个整数,即字符的 ASCII 码,保证对应的字符为可见字符。现在输入一个 ASCII 码,要求你输出对应的字符。我们知道每个字符都有一个对应的 ASCII 码。一行,包含相应的字符。

2025-03-19 22:04:16 211 1

原创 C++04函数-1与字符相关的函数:4、3243练40.1 小写变大写,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

在 ASCII 码表中,小写字母和对应的大写字母的 ASCII 码值相差 32。函数,可以直接将小写字母转换为大写字母。输入一个小写字母,输出它的大写。

2025-03-19 22:04:13 221 1

原创 C++04函数-1与字符相关的函数:3、3242:【例40.3】ISBN码,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

每一本正式出版的图书都有一个 ISBN 号码与之对应,ISBN 码包括 9 位数字、11位识别码和 3位分隔符,其规定格式如"x−xxx−xxxxx−x",其中符号"−−"是分隔符(键盘上的减号),最后一位是识别码,例如 "0−670−82162−4" 就是一个标准的 ISBN 码。首位数字乘以1加上次位数字乘以2⋯以此类推,用所得的结果mod11,所得的余数即为识别码,如果余数为 10,则识别码为大写字母'X'。",否则,按照规定的格式,输出正确的 ISBN 号码(包括分隔符"−")。

2025-03-19 22:04:09 647 1

原创 C++04函数-1与字符相关的函数:2、3241【例40.2】 蜗牛字母,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

已知大写字母怪兽的弱点是该字母对应的 ASCII 码值,例如怪兽 A 的弱点是 65。小写字母怪兽的弱点是该字母对应的大写字母,例如怪兽 b 的弱点是 B。在前往神秘国度的道路上,蜗牛遇到了一个难题。它遇到了一个字母怪兽,只有找到弱点才能打败怪兽。输入为一个字符,保证是大写字母或者小写字母中的一个,代表一个字母怪兽。现在蜗牛遇到了一个字母怪兽,请你帮它找出怪兽的弱点吧。输出一行,为一个整数或一个字符,是这个怪兽的弱点。

2025-03-19 22:03:31 292 1

原创 C++04函数-1与字符相关的函数:1、3240【例40.1】 字符类型判断,让小孩子也能够理解的思路,C++信奥赛/竞赛/专项选拔赛

从键盘输入一个字符,判断该字符是否大写字母、小写字母、数字字符或其他字符。分别输出对应的提示信息。如果该字符是大写字母,则输出"若是小写字母,则输出"若是数字字符,则输出"若是其他字符,则输出"

2025-03-19 21:11:59 127

原创 C++07-5字符串和数组互换:3、3418【例72.3】 提取数字串按数值排序,让小孩子能够理解的思路,C++信奥赛/竞赛/专项选拔赛

给定一个字符串,请将其中的所有数字串提取,并将每个数字串作为整数看待,按从小到大顺序输出结果,输出的整数之间以逗号间隔。如果没有数字,则输出0;在一行内输入一串符号,长度不大于 300。输入数据保证提取的整数不超过 10的9次方。从小到大排序的整数序列,如果没有数字,则输出 0。

2025-03-18 22:47:45 174

原创 C++07-5字符串和数组互换:2、3417【例72.2】 取出整数的一部分,让小孩子能够理解的思路,C++信奥赛/竞赛/专项选拔赛

若输入的数的绝对值大于上述树的位数(如 8 或−8),则返回"Error"。会从字符串的第 0 个位置开始,删除 1 个字符,即删除前导零,最终。若k是负数,则是从后往前取−k位,比如输入−3,则返回后面3位即67;若k是正数,则是从前往后取k位,比如输入4,返回前4位即 1456;的下标为 2 个位置(索引从 0 开始)开始截取,即截取。个位置作为起始位置,然后截取到字符串末尾。第二行,输入一个整数k (−10≤≤k≤10)。会删除从第 0 个位置到字符串末尾的所有字符,就相当于从字符串末尾往前数。

2025-03-18 22:29:12 262

原创 C++07-5字符串和数组互换:1二进制转化为十进制3416:【例72.1】,新手小白都能理解的思路,C++信奥赛/竞赛/专项选拔赛

解题的关键思路基于二进制转换为十进制的基本原理:二进制数从右至左,每一位上的数字乘以2的相应幂次(幂次从0开始依次递增),然后将所有结果相加,得到的和就是对应的十进制数。第一行一个正整数n (1≤n≤30),表示二进制数的长度。输出一个整数,表示对应的十进制数。把一个二进制数转化为十进制数。第二行一个二进制数。

2025-03-18 21:59:24 210

原创 C++07-4字典序和数值转换:1、字典序排序3412【例71.1】 ,新手小白都能理解的思路,C++信奥赛/竞赛/专项选拔赛

小明这天正在学习字典序排序,很想研究一下稳定排序的内部构造,所以他定义了一个代价,代价表示为 排序前字符的下标与排序后字符的下标之差的绝对值。现在有一个字符串,按照字典序 从小到大 进行排序,小明通过计算串中所有的代价和了解到这个稳定排序的整个代价。请你设计一个程序,计算整个稳定排序的代价。代价和:计算每个字符的原始下标 与 当前下标差值的绝对值,将这些绝对值累加起来得到代价和。输出共计 1行,包含 1个数,表示整个字符串内部按照字典序稳定排序后的代价和。

2025-03-18 21:53:17 185

原创 C++07-4字典序和数值转换:4、成绩排序3415练71.1 ,新手小白都能理解的思路,C++信奥赛/竞赛/专项选拔赛

接下来n行,每行为每个学生的名字和他的成绩,中间用单个空格隔开。名字只包含字母且长度不超过20,成绩为一个不大于100的非负整数。给出了班里某门课程的成绩单,请你按成绩从高到低对成绩单排序输出,如果有相同分数则名字字典序小的在前。把成绩单按分数从高到低的顺序进行排序并输出,每行包含名字和分数两项,之间有一个空格。第一行为n(0<<n<20),表示班里的学生数目;

2025-03-18 21:17:13 136

原创 C++07-4字典序和数值转换:3、拼最大整数3414:【例71.3】 ,新手小白都能理解的思路,C++信奥赛/竞赛/专项选拔赛

冒泡排序的基本思想是多次遍历数组,每次比较相邻的两个元素,如果它们的顺序不符合要求(根据前面提到的拼接大小比较规则),就交换它们的位置。又如:n=4时,4个整数7,13,4,46联接成的最大整数为:7424613。要将多个正整数拼接成最大的多位整数,不能单纯依据数字本身的大小来排序,所以需要。,使用排序算法,如果原来的拼接方式得到大小<交换位置后得到的大小,那么交换。设有n个正整数(n<20),将它们联接成一排,组成一个最大的多位整数。一个正整数,表示最大的整数。,比较它们拼接成的字符串。

2025-03-18 20:53:57 237

原创 C++07-4字典序和数值转换:2、01串排序3413:【例71.2】 ,新手小白都能理解的思路,C++信奥赛/竞赛/专项选拔赛

将 01 串首先按长度排序,长度相同时,按 1的个数多少进行排序,1的个数相同时再按 ASCII 码值排序(字典序)。输入数据中含有一些 01 串,01 串的长度不大于 256个字符。重新排列 01串的顺序,使得串按基本描述的方式排序,然后依次输出。第一行输入一个整数 n (1≤n≤100),表示字符串的个数。,然后决定是否交换它们,

2025-03-18 18:05:55 134

原创 C++05-2数组找数:4最大数 ,新手小白都能理解的思路,C++信奥赛/竞赛/专项选拔赛

n个数中最大的那个数在哪里?输出其位置,若有多个最大数则都要输出。第一行:n( 3 <= n <= 10) 第二行:空格隔开的n个数。输出若干个数,表示最大数的位置,每行一个。记录极值的位置(单次或多次出现)。

2025-03-17 16:14:31 105

原创 C++07-其他:1找最小的字符串 ,新手小白都能理解的思路,C++信奥赛/竞赛/专项选拔赛

输入第一行给出正整数N;随后N行,每行给出一个长度小于80的非空字符串,其中不会出现换行符,空格,制表符。编写程序,针对输入的N个不同的字符串,输出其中字典码最小的字符串。输出字典码最小的字符串。

2025-03-13 23:40:25 116

原创 C++07-3string常用函数:5删除单词后缀3411:练70.3,两种方法,新手小白都能理解的思路,C++信奥赛/竞赛/专项选拔赛

给定一个单词,如果该单词以er、ly或者ing后缀结尾, 则删除该后缀(题目保证删除后缀后的单词长度不为 0),否则不进行任何操作。输入一行,包含一个单词(单词中间没有空格,每个单词最大长度为 32)。输出按照题目要求处理后的单词。

2025-03-13 20:17:19 477

原创 C++07-3string常用函数:4判断字符串是否为回文3410:练70.2 ,新手小白都能秒懂,C++信奥赛/竞赛/专项选拔赛

输入一个字符串,输出该字符串是否回文。回文是指顺读和倒读都一样的字符串。输入为一行字符串(字符串中没有空白字符,字符串长度不超过 100)。如果字符串是回文,输出"yes";否则,输出"no"。

2025-03-13 19:53:27 219

原创 C++07-3string常用函数:3验证子串3409:练70.1,新手小白都能理解的思路,C++信奥赛/竞赛/专项选拔赛Alan呆-小呆老师已于 2025-03-12 20:58:10 修改

输入两个字符串, 每个字符串占一行,长度不超过200且不含空格。否则,若第二个串 s2​是第一个串s1​的子串,输出"(s2​)若第一个串 s1​是第二个串 s2​的子串,则输出"(s1​)输入两个字符串,验证其中一个串是否为另一个串的子串。还是用find函数,看上一章节。

2025-03-13 19:19:33 169

原创 C++07-3string常用函数:2求A-B字符串3407:【例70.2】,新手小白都能理解的思路,C++信奥赛/竞赛/专项选拔赛

本题要求你计算 A−B。不过麻烦的是,A 和 B 都是字符串 —— 即从字符串 A 中把字符串 B 所包含的字符全删掉,剩下的字符组成的就是字符串 A−B。输入在 2行中先后给出字符串 A 和 B。两字符串的长度都不超过 10的4次方,并且保证每个字符串都是由数字,字母,空格等字符组成,最后以换行符结束。在一行中打印出A−B的结果字符串。string常用函数链接点击上方。

2025-03-12 20:49:40 407

原创 C++07-3string常用函数:1字符串移位包含问题3406:【例70.1】,C++信奥赛/竞赛/专项选拔赛

给定两个字符串 s1​和 s2​,要求判定其中一个字符串是否是另一字符串通过若干次循环移位后的新字符串的子串。例如CDAA是由AABCD两次移位后产生的新串BCDAA的子串,而ABCD与ACBD则不能通过多次移位来得到其中一个字符串是新串的子串。: -需要确保两个字符串的长度关系。: -你当前的方法没有使用额外的空间,但可以通过使用字符串拼接的方式来减少循环移位的操作次数,从而提高空间利用率。如果一个字符串是另一字符串通过若干次循环移位产生的新串的子串,则输出"true",否则输出"false"。

2025-03-12 19:35:23 117

原创 C++07-2string字符串:总结C++ 中 std::string 常用函数

C++ 中 常用函数的示例代码、运行结果,以及用表格进行的总结。运行结果表格总结

2025-03-11 21:05:43 667

原创 C++07-2string字符串:7信息加密3404:练69.4,8恺撒加密术3405:练69.5,两道题方法一样,芜湖,C++信奥赛/竞赛/专项选拔赛

将字母转换成其后的第3个字母,例如:A→D,a→d;对于字母表的最后3个字母,将其相应转化为字母表前3个字母,例如X→A,x→a。在传递信息的过程中,为了加密,有时需要按一定规则将文本转换成密文发送出去。现在,请你根据输入的一行字符,输出其对应的密码。字符串长度不超过 100。对于非字母字符,保持不变。输出加密后的字符串。

2025-03-11 20:28:29 147

原创 C++07-2string字符串:6整理药名3403:练69.3 ,C++信奥赛/竞赛/专项选拔赛

医生在书写药品名的时候经常不注意大小写,格式比较混乱。现要求你写一个程序将医生书写混乱的药品名整理成统一规范的格式,即药品名的第一个字符如果是字母要大写,其他字母小写。接下来 n 行,每行一个单词,长度不超过 2020,表示医生手书的药品名。3)可以直接用<cctype>库转大小写函数toupper();第一行一个数字 n,表示有 n 个药品名要整理,n不超过100。n 行,每行一个单词,对应输入的药品名的规范写法。2)不是字符,保持原样,其他字符小写。1)第一个是字符要大写,其他小写。

2025-03-11 20:04:50 208

原创 C++07-2string字符串:5单词倒排3402:练69.2,这一题贯穿星河,细节满满,C++信奥赛/竞赛/专项选拔赛

有些 OJ 系统要求即使输入为空,也需要有一个符合规范的输出(比如输出一个空行),原代码在这方面没有处理好。变量来控制是否输出空格,这种方式容易出错。当最后一个单词输出后,若控制逻辑有误,可能会在最后一个单词后面多输出一个空格。向量是否为空,如果不为空,先输出第一个单词,然后在后续每个单词前输出一个空格。编写程序,读入一行英文(只包含字母和空格,单词间以单个空格分隔),将所有单词的顺序倒排并输出,依然以单个空格分隔。为了不让最后一个字符输出空格,加了一个条件,就是到倒数第二个后停止输出空格,只输出单词,

2025-03-06 23:04:02 724

原创 C++07-2string字符串:4单词的长度3401练69.1 ,关于cin和getline,降龙十八掌,C++信奥赛/竞赛/专项选拔赛

注意,如果有标点符号(如连字符,逗号,句号),标点符号算作与之相连的词的一部分。没有被空格间隔开的符号串,都算作单词。一行单词序列,最少1个单词,最多300个单词,单词之间用至少11个空格间隔。思路:1)正常思路就是输出一个字符大小,然后输出逗号",",不过这个会使得最后一个也有逗号,输入一行单词序列,相邻单词之间由 1 个或多个空格间隔,请对应地计算各个单词的长度。2) 逆向思维,除了第一个数,其他都要先输出逗号,在输出一个数,这样就解决了。依次输出对应单词的长度,之间以逗号间隔。

2025-03-05 16:54:20 242

原创 C++07-2string字符串:3字符串中的空格3400【例69.3】,搞了一个晚上,终于弄明白了,就差小小的一个细节,细节决定成败,缓冲,C++信奥赛/竞赛/专项选拔赛

输出有 n+1行,第一行只有一个正整数,表示总共删除的空格数。第二行至第 n+1行共n行,每行表示一个删除空格后的字符串(按照输入顺序)。会读取一个整数后,跳过所有空白字符(包括换行符、空格等),直到遇到非空白字符。现在有n个字符串,其中包含一些空格,现在希望你将所有字符串中的空格删除后输出。第二行至n+1行共n行,每行是一个字符串(由大小写英文字母和空格组成)。输入第一行只有一个正整数n,表示共有n个字符串。或其他字符),可能导致后续读取错乱。若输入格式严格规范,所在行的所有残留字符(包括换行符)

2025-03-04 23:38:12 205

原创 C++07-2string字符串:2 矩阵交换行3399【例69.2】,C++信奥赛,突破自己必刷题!

给定一个5×5的矩阵(数学上,一个r×c的矩阵是一个由r行c列元素排列成的矩形阵列),将第n行和第m行交换,输出交换后的结果。

2025-03-04 17:44:38 391

原创 C++07-2string字符串:1过滤多余的空格3398【例69.1】,常见错误分析,普通人小白也可以理解,C++信奥赛一本通编程启蒙

要读取包含空格的整行字符串,应使用 getline(cin, s);1) 输入读取问题:cin>>s;当 i 等于 s.size() - 1 时,s[i + 1] 会访问到字符串之外的位置,导致索引越界。3)循环逻辑问题:在删除一个字符后,字符串的长度会改变,而 i 仍会按照原来的顺序递增,2)索引越界风险:在 if(s[i]==' '&&s[i+1]==' ') 中,一行,一个字符串(长度不超过 200200),句子的头和尾都没有空格。一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。

2025-03-04 16:49:22 415

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除