大小写字母互换-输入与输出字符串
目录
【题目描述】
小明在录入一篇英文文献时由于键盘误操作,事先按下了CapsLock(大写锁定)键,然后又按照平时的录入习惯进行操作。结果录入的内容里面,原本应该是英文大写的地方都变成了小写,而原来应该是英文小写的地方都变成了大写。如果重新录入的话实在太可怕了!
【输入格式】
任意一个字符串(长度小于等于80),以换行结束。
【输出格式】
转换后的字符串。
For example:
Input
Result
i AM A STUDENT.i AM 19.
I am a student.I am 19.
答案
#include <iostream>
using namespace std;
int main()
{
char a[90];
int i=0;
cin.getline(a,90);
for(i=0;a[i]!='\0';i++)
{
if(a[i]>='a' && a[i]<='z')
{
a[i] = a[i] - 32;
}
else if(a[i]>='A' && a[i]<='Z')
{
a[i] = a[i] + 32;
}
}
puts(a);
return 0;
}
这题算法很简单,难的是输入与输出,试了很久,最终用这种输入方法可以实现。
发现了几个问题1.网上查的ascii码跟实际程序里的对不上,查ascii码可以用下面这个代码
#include <iostream>
using namespace std;
int main()
{
char a[20];
cin.getline(a,90);
int i;
cout << a[0] - '0';
return 0;
}
2.字符数组可以直接cin»a;和cout«a;