题目描述
医生在书写药品名的时候经常不注意大小写,格式比较混乱。现要求你写一个程序将医生书写混乱的药品名整理成统一规范的格式,即药品名的第一个字符如果是字母要大写,其他字母小写。
如将 ASPIRIN 、 aspirin 整理成 Aspirin。
输入格式
第一行一个数字 n,表示有 n 个药品名要整理,n 不超过 100。
接下来 n 行,每行一个单词,长度不超过 20,表示医生手书的药品名。
药品名由字母、数字和 - 组成。
输出格式
n 行,每行一个单词,对应输入的药品名的规范写法。
思路
首先,我们要知道这个医生写的药名错哪了,并将错的字母改变大小写。
C++如何改变大小写
if(字母>='a'&&字母<='z'){//小写变大写
字母-=32;
}
if(字母>='A'&&字母<='A'){//大写变小写
字母+=32;
}
如果看不懂就对照ASCII码表
代码
#include<iostream>
#include<cstring>
using namespace std;
int main(){
int a;
cin>>a;
string b;
for(int i=0;i<a;i++){
cin>>b;
if(b[0]>='a'&&b[0]<='z'){//判断首字母是否大写
b[0]=b[0]-32;
}
for(int j=1;j<b.length();j++){
if(b[j]>='A'&&b[j]<='Z'){//判断其他字母是否小写
b[j]+=32;
}
}
cout<<b<<endl;//处理完后输出
}
return 0;
}