蓝桥杯——算法训练 大小写转换

本文介绍了一个简单的C++程序,该程序能够接收一个只包含英文字母且无空格的字符串作为输入,并将每个字母的大写转换为小写,小写转换为大写,最后输出转换后的字符串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述
  编写一个程序,输入一个字符串(长度不超过20),然后把这个字符串内的每一个字符进行大小写变换,即将大写字母变成小写,小写字母变成大写,然后把这个新的字符串输出。
  输入格式:输入一个字符串,而且这个字符串当中只包含英文字母,不包含其他类型的字符,也没有空格。
  输出格式:输出经过转换后的字符串。
输入输出样例
    样例输入
    AeDb
    样例输出
    aEdB
#include<iostream>
#include<string>

using namespace std;

int main()
{
    string str;
    getline(cin,str);
    for(int i=0;i<str.length();i++){
        if(str[i]>='a'&&str[i]<='z')str[i]=str[i]+('A'-'a');
        else str[i]=str[i]-('A'-'a');
    }
    cout<<str;

    return 0;
 } 
### 蓝桥杯 C++ 编程题解及学习资源 #### 题目解析与算法设计 蓝桥杯作为一项面向全国范围的技术竞赛,其题目涵盖了基础到高级的各种难度层次。以下是针对不同类型的蓝桥杯 C++ 编程题目的分析: 1. **查找整数问题** 对于在列表 `lst` 中找到第 n 小的整数这一类问题,可以采用排序法或者堆排序的方式实现。通过先对数组进行升序排列,再选取索引为 `(n-1)` 的元素即可得到目标值[^1]。 2. **杨辉三角计算** 杨辉三角是一个经典的组合数学问题,在蓝桥杯的基础训练中也有所涉及。可以通过二维数组存储每一层的结果,并利用递推关系完成构建。具体而言,当前项等于上一层相邻两项之和。 3. **表达式修改运算逻辑** 当遇到需要调整算术表达式的场景时,例如将加号替换减号并重新评估结果的任务,则需注意操作符优先级的变化以及括号的作用。按照引用中的描述,最终公式应写成如下形式: ```cpp res = tmp - (j + (j - 1)) + j * (j - 1); ``` 这里特别强调乘法相较于加减具有更高的执行顺序[^2]。 4. **浮点数转R格式处理** 关于小蓝研究的新颖数据表现方式——即把正实数值映射至特定规则下的整型编码过程,主要依赖输入参数 `d` 和转换因子 `n` 完成定义。整个流程大致分为三步走:取整部分、分数部分分离;依据指定精度舍入近似;最后拼接形成完整的十进制字符串表示[^3]。 #### 推荐的学习材料与工具链接 为了更好地准备蓝桥杯比赛,建议参考以下几类优质资源: - 官方文档与历年真题集锦; - 各大在线评测平台上的专项练习专区; - 技术社区分享的经验帖和技术博文集合。 ```cpp // 示例代码片段展示如何生成前五行杨辉三角形 #include <iostream> using namespace std; int main() { int rows = 5; long long C[rows][rows]; for(int i=0;i<rows;i++) { for(int j=0;j<=i;j++) { if(j==0 || j==i) C[i][j]=1; else C[i][j]=(C[i-1][j-1]+C[i-1][j]); cout<<C[i][j]<<" "; } cout<<"\n"; } return 0; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值