本文正在参与掘金团队号上线活动,点击查看详情
一、问题描述
编写一个程序,输入一个字符串(长度不超过20),然后把这个字符串内的每一个字符进行大小写变换,即将大写字母变成小写,小写字母变成大写,然后把这个新的字符串输出。
输入格式:输入一个字符串,而且这个字符串当中只包含英文字母,不包含其他类型的字符,也没有空格。
输出格式:输出经过转换后的字符串。
输入输出样例
样例输入
AeDb
样例输出
aEdB
二、思路分析
这是一道基础题,考察基本的ASCII码,首先我是把输入输出当成了字符串写了
把字符串里每个字符转换后再输出(法一)
随后发现了while(cin>>ch)这种神奇操作,于是又写了法二😁
三、AC代码
法一
#include<bits/stdc++.h>
using namespace std;
int main()
{
char s[20];
gets(s);
for(int i=0;i<strlen(s);i++)
{
if('A'<=s[i]&&s[i]<='Z')
s[i]+=32;
else
s[i]-=32;
}
puts(s);
return 0;
}
法二
#include <bits/stdc++.h>
using namespace std;
int main()
{
char ch;
while(cin>>ch)
{
if(ch>='a'&&ch<='z')
ch-=32;
else
ch+=32;
cout<<ch;
}
return 0;
}
四、总结
算法小白的每天两道题终于刷完了,又是充实的一天