【蓝桥杯选拔赛真题57】C++字符串反转 第十四届蓝桥杯青少年创意编程大赛 算法思维 C++编程选拔赛真题解

目录

C++字符串反转

一、题目要求

1、编程实现

2、输入输出

二、算法分析

三、程序编写

四、程序说明

五、运行结果

六、考点分析

七、推荐资料


C++字符串反转

第十四届蓝桥杯青少年创意编程大赛C++选拔赛真题

一、题目要求

1、编程实现

给定一个只包含大写字母"M”和”W"的字符串(字符串长度小于100),然后对字符串中位置为偶数的字符进行反转(M反转为W,W反转为M;字符串中左边第1个字符位置为1)

例如:原字符串为"WMMW",反转后为"WWMM”

2、输入输出

输入描述:输入一个只包含大写字符"M"和“W"的字符串(字符串长度小于100)

输出描述:输出一个字符串,表示对原字符串中位置为偶数的字符反转后的字符串

输入样例:

WMMW

输出样例:

WWMM

二、算法分析

  1. 从给定题目的初步分析可以看出,这是一道字符串相关题目
  2. 实现题目要求可以有多种方式,可以使用字符串string,也可以使用字符数组char完成
  3. 小兔子老师这里采用string的方式进行实现,逐个遍历每个字符进行一一校验匹配

三、程序编写

#include <iostream>
#include <string>
using namespace std;
int main() {
  	string s;
  	cin >> s;
  	for (int i = 0; i < int(s.size()); i++) 
  	{
        //字符串左边第一位开始为第一个数字,正常输出
    	if (i % 2 == 0)
      		cout << s[i];
    	else if (s[i] == 'W')
     		cout << 'M';
    	else
      		cout << 'W';
  	}
  	return 0;
}

四、程序说明

  1. 首先需要导入输入输出流头文件
  2. 接着再次导入字符串string头文件
  3. 然后是引入std命名空间中的所有成员到当前的程序中,这样在当前的程序中就可以直接使用 std 命名空间中的所有成员,而不需要使用的时候在成员前面加上(std::)前缀
  4. 接着声明程序的入口,也就是主函数(主函数在一个程序中只允许出现一次)
  5. 根据题目要求声明一个字符串变量s
  6. 然后利用输入流对象cin,从键盘读取变量s的值
  7. 然后利用for循环逐个便利字符串s里面的每一个字符,之所以s.size()函数用int进行强制转换,因为size函数返回的是无符号整型,所以转换成int类型
  8. 然后利用多分支语句if-else if-else语句对每一个元素按要求进行输出
  9. 最后返回0,程序结束

 本文作者:小兔子编程 作者首页:https://blog.csdn.net/frank2102

五、运行结果

WMMW

WWMM

六、考点分析

难度级别:容易,这题相对而言还是比较简单的,具体主要考查如下:

  1. 充分掌握变量的定义和使用
  2. 学会输入流对象cin的使用,从键盘读入相应的数据
  3. 学会for循环的使用,在确定循环次数的时候推荐使用学会
  4. 学会if条件判断语句的使用,满足一定条件才能执行后面的语句
  5. 学会if...else...双分支语句的使用,条件满足执行一种处理,不满足执行另一种处理
  6. 学会if...else if...else...多分支语句的使用,满足不同的条件执行不同的处理程序
  7. 掌握输出流对象cout的使用,与流插入运算符 << 结合使用将对象输出到终端显示
  8. 学会分析题目,算法分析,将复杂问题模块化,简单化,从中找到相应的解题思路
  9. 充分掌握字符串的定义和使用、分支语句、循环语句和简单算法知识的使用及输入输出的用法

PS:方式方法有多种,小朋友们只要能够达到题目要求即可!

七、推荐资料

  • 所有考级比赛学习相关资料合集【推荐收藏】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/519779.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++进阶--C++11(2)

C11第一篇 C11是C编程语言的一个版本&#xff0c;于2011年发布。C11引入了许多新特性&#xff0c;为C语言提供了更强大和更现代化的编程能力。 可变参数模板 在C11中&#xff0c;可变参数模板可以定义接受任意数量和类型参数的函数模板或类模板。它可以表示0到任意个数&…

蓝桥杯 第2155题质因数个数 C++ Java Python

题目 思路和解题方法 目标是计算给定数 n 的质因数个数。可以使用了试除法来找到 n 的所有质因数 读取输入的数 n。从 2 开始遍历到 sqrt(n)&#xff0c;对于每个数 i&#xff1a; 如果 n 能被 i 整除&#xff0c;则进行以下操作&#xff1a; 将 n 除以 i&#xff0c;直到 n 不…

leetcode.面试题 02.07. 链表相交

题目 给你两个单链表的头节点 headA 和 headB &#xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点&#xff0c;返回 null 。 图示两个链表在节点 c1 开始相交&#xff1a; 思路 假a在链表A上移动,b在链表B上移动&#xff0c;a移动完在B上开始&…

鸿蒙Lottie动画-实现控制动画的播放、暂停、倍速播放、播放顺序

介绍 本示例展示了lottie对动画的操作功能。引入Lottie模块&#xff0c;实现控制动画的播放、暂停、倍速播放、播放顺序、播放到指定帧停止或从指定帧开始播放、侦听事件等功能&#xff0c;动画资源路径必须是json格式。 效果预览 使用说明&#xff1a; 进入页面默认开始201…

铸铁平台的平面度

铸铁平台的平面度是指平台的表面平整程度&#xff0c;即平台表面与其理论平面之间的最大偏差。平台的平面度通常使用国际标准符号GD&T中的平面度符号&#xff08;ⓨ&#xff09;表示&#xff0c;单位为毫米&#xff08;mm&#xff09;或微米&#xff08;μm&#xff09;。 …

docker搭建EFK(未完待续)

目录 elasticsearch1.创建网络2.拉取镜像3.创建容器如果出现启动失败&#xff0c;提示目录挂载失败&#xff0c;可以考虑如下措施 开放防火墙端口4.验证安装成功重置es密码关闭https连接创建kibana用户创建新账户给账户授权 kibana1.创建容器2.验证安装成功3.es为kibana创建用户…

2024年第八届人工智能与虚拟现实国际会议(AIVR 2024)即将召开!

2024年第八届人工智能与虚拟现实国际会议&#xff08;AIVR 2024&#xff09;将2024年7月19-21日在日本福冈举行。人工智能与虚拟现实的发展对推动科技进步、促进经济发展、提升人类生活质量等具有重要意义。AIVR 2024将携手各专家学者&#xff0c;共同挖掘智能与虚拟的无限可能…

Day03-Ansible playbook

Day03-Ansible playbook 1. Ansible Playbook基本概述1.1 什么是playbook?1.2 Ansible playbook与AD-Hoc的关系1.3 Ansible Playbook书写格式1.4 Ansible Playbook练习实验1.4.1 playbook剧本初使用1.4.2 playbook剧本-部署配置nfs1.4.3 playbook剧本-部署配置lnmp 1. Ansible…

多线程学习-线程池

目录 1.线程池的作用 2.线程池的实现 3.自定义创建线程池 1.线程池的作用 当我们使用Thread的实现类来创建线程并调用start运行线程时&#xff0c;这个线程只会使用一次并且执行的任务是固定的&#xff0c;等run方法中的代码执行完之后这个线程就会变成垃圾等待被回收掉。如…

7(8)-2-CSS 盒子模型

个人主页&#xff1a;学习前端的小z 个人专栏&#xff1a;HTML5和CSS3悦读 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结&#xff0c;欢迎大家在评论区交流讨论&#xff01; 文章目录 CSS 盒子模型1 盒子模型&#xff08;Box Model&#xff09;组成2 边框&#x…

传统海外仓的管理模式有什么缺点?使用位像素海外仓系统的海外仓有什么优势?

传统的海外仓管理模式主要需要大量的人工操作和相对简单的信息化手段进行仓库的日常运营。因此&#xff0c;传统海外仓的运作比较依赖仓库员工的手工记录、核对和处理各种仓储和物流信息。 然而&#xff0c;传统海外仓管理模式通常存在一些缺点&#xff1a; 效率低下 因为需…

LLMOps快速入门,轻松开发部署大语言模型

大家好&#xff0c;如今我们能够与ChatGPT进行轻松互动&#xff1a;只需输入提示&#xff0c;按下回车&#xff0c;就能迅速得到回应。然而&#xff0c;这个无缝互动的底层&#xff0c;是一系列复杂而有序的自动执行步骤&#xff0c;即大型语言模型运营&#xff08;LLMOps&…

postgresql数据库|

概述 Oracle_fdw 是一种postgresql外部表插件&#xff0c;可以读取到Oracle上面的数据。是一种非常方便且常见的pg与Oracle的同步数据的方法 配置Oracle环境 Oracle_fdw 的编译依赖pg_config和Oracle的客户端环境 pg_config 是什么呢&#xff1f;其实就是postgresql的一个可执…

OpenFOAM学习笔记

OpenFOAM 计算流体力学&#xff1a;用计算机求解流体控制方程&#xff0c;来模拟真实情况下&#xff0c;流体的流动状态OpenFOAM的离散方法&#xff1a;有限体积法&#xff0c;将整个空间划分成若干个控制体OpenFOAM使用的网格系统&#xff1a;同位网格&#xff08;Collocated…

动态属性的响应式问题和行内编辑的问题

动态属性的响应式问题 通过点击给目标添加动态数据&#xff0c;该数据不具备响应式特性 如下图&#xff1a; 点击编辑&#xff0c;前面的数据框会变成输入框&#xff0c;点取消会消失 // 获取数据 async getList () {const res await xxxthis.list res.data.rows// 1. 获…

跨国网络通信挑战与解决方案:优化越南工厂与中国总部连接的网络质量

在全球化不断深入的今天&#xff0c;越来越多的中国企业走出国门&#xff0c;在世界各地设立分支机构和生产基地。然而&#xff0c;随之而来的是跨国网络通信的挑战。最近&#xff0c;客户位于越南的工厂与中国总部之间的网络连接出现了问题&#xff0c;直接影响了企业的日常运…

Windows启动项管理器Autoruns

文章目录 AutoRunsVirusTotalAutorunsc AutoRuns AutoRuns用于启动程序管理&#xff0c;可显示系统启动或登录时的各种自动启动行为&#xff0c;并扩展和加载各种系统进程&#xff0c;要比任务管理器中的自启动管理高级得多&#xff0c;其界面如下&#xff0c;列出了所有开机启…

阿里云幻兽帕鲁多人联机服务器多少钱?4核16G或8核32G配置

2024阿里云幻兽帕鲁专用服务器价格表&#xff1a;4核16G幻兽帕鲁专用服务器26元一个月、149元半年&#xff0c;默认10M公网带宽&#xff0c;8核32G幻兽帕鲁服务器10M带宽价格90元1个月、271元3个月。阿里云提供的Palworld服务器是ECS经济型e实例&#xff0c;CPU采用Intel Xeon …

c++11 标准模板(STL)本地化库 - 平面类别 - (std::ctype) 定义字符分类表(五)

本地化库 本地环境设施包含字符分类和字符串校对、数值、货币及日期/时间格式化和分析&#xff0c;以及消息取得的国际化支持。本地环境设置控制流 I/O 、正则表达式库和 C 标准库的其他组件的行为。 平面类别 定义字符分类表 std::ctype template< class CharT > clas…

159 Linux C++ 通讯架构实战14,epoll 函数代码实战

ngx_epoll_init函数的调用 //&#xff08;3.2&#xff09;ngx_epoll_init函数的调用&#xff08;要在子进程中执行&#xff09; //四章&#xff0c;四节 project1.cpp&#xff1a;nginx中创建worker子进程&#xff1b; //nginx中创建worker子进程 //官方nginx ,一个…