本题:的主要知识点是小写字母a到z是ASCLL码值是97到122,A到Z的ASCLL码值是65到90。
所以将小写转成大写只需要用**'a'减去'A'即可**(差值是32)。
要将首字母小写转成大写,要考虑字符串的首元素(s[0]),还有如果字符前一位是空格的话,证明这个字符也是首字母。
#include<iostream>
#include<cstring>
using namespace std;
int main() {
char s[1000];
while (1) {
fgets(s,sizeof(s),stdin);
for (int i = 0; i < sizeof(s); i++) {
if (s[i] == '0' || s[i-1] == ' ') {
s[i] -= ('a' - 'A');
}
}
printf("%s\n", s);
}
return 0;
}
