当前位置:   article > 正文

洛谷字符串题解_某蒟蒻迷上了小书童c++

某蒟蒻迷上了小书童c++

昨天做了7题,赶脚不错哦,但总体来说洛谷上字符串的题还是很水的 二3二,

在看题解前先总结几个关于字符串的小方法:
1.~~~(变量).size() 

用来统计这个字符串变量中字符的个数

2.~~~(变量).find()

用来寻找一个字符串中的一个子串开头字母的位置(默认从0开始寻找)

3.~~~(变量).substr()

用来截取一个字符串中的一个子串

第一个参数是开始寻找的位置,第二个参数是子串长度

例如:输入的字符串为abcde,输入到s变量里(cin>>s),

所以如果进行s.substr(2,3)操作,最后就会输出bcd

小方法说完了,那就来看看今天的题解吧 :) :)

Q1:自动修正

题目描述

大家都知道一些办公软件有自动将字母转换为大写的功能。输入一个长度不超过 100 且不包括空格的字符串。要求将该字符串中的所有小写字母变成大写字母并输出。

这是一道很水的题目,我长话短说

简析这个题目,其实就是先判断输入字符的大小写,再将小写变为大写即可

上代码!

  1. #include<iostream>
  2. using namespace std;
  3. int main(){
  4. string s;
  5. cin>>s;
  6. for(int i=0;i<s.size();i++)
  7. {
  8. if(s[i]>='a'&&s[i]<='z')
  9. s[i]=s[i]-32;//利用ask码转换字母的大小写
  10. }
  11. cout<<s;
  12. }

话不多说,看第二道水题

Q2:小书童——凯撒密码

题目背景

某蒟蒻迷上了“小书童”,有一天登陆时忘记密码了(他没绑定邮箱or手机),于是便把问题抛给了神犇你。

题目描述

蒟蒻虽然忘记密码,但他还记得密码是由一个字符串组成。密码是由原文字符串(由不超过 50 个小写字母组成)中每个字母向后移动 n 位形成的。z 的下一个字母是 a,如此循环。他现在找到了移动前的原文字符串及 n,请你求出密码。

输入格式

第一行:n。第二行:未移动前的一串字母

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/691587
推荐阅读
相关标签
  

闽ICP备14008679号