使用 string 类型输入一个英文语句,试编写一个函数将语句中的所有单词转换成大写字母,并在 main 函数中输出转换后的英文语句。
分析:
让用户输入一句英文,读入后转成大写后,再输出。
小写转大写方法,先判断每个字母是不是小写字母,如果是就减一个小写字母到大写字母的距离(int Dis = ‘a’ – ‘A’)。这样就将此字母转成大写
大小字母对应Ascii码,请参考:ascii-码表
具体代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
#include "stdafx.h" #include <iostream> #include <string> using namespace std; void ConvStrToUP(string& str) { int Dis = 'a' - 'A'; for (size_t i = 0; i < str.length(); i++) { if (str[i] >= 'a' && str[i] <= 'z') str[i] -= Dis; } } int main() { cout << "输入一句英文" << endl; string str; getline(cin, str); ConvStrToUP(str); cout << "转换成大写" << endl; cout << str << endl; system("pause"); return 0; } |
运行结果: