2439: 【入门】【P5733】自动修正

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:65 解决:34

题目描述

大家都知道一些办公软件有自动将字母转换为大写的功能。输入一个长度不超过 lns="http://www.w3.org/1998/Math/MathML">100 且不包括空格的字符串。要求将该字符串中的所有小写字母变成大写字母并输出。

输入

输入一行,一个字符串。

输出

输出一个字符串,即将原字符串中的所有小写字母转化为大写字母。

样例输入 复制

Luogu4!

样例输出 复制

LUOGU4!

提示

#include <iostream>
#include <cstdio>
using namespace std;
int main() {
    char s[110];
    scanf("%s", s); // 读入这个字符串,还可以 cin>>s;
    for (int i = 0 ; s[i] != '\0' ; i++)
        if ('a' <= s[i] && s[i] <= 'z')
        // 如果这个字符在'a'到'z'中间,说明是小写字母
        s[i] -= 'a' - 'A'; // 变成对应的大写字母,减去偏移量
    printf("%s\n", s); // 输出,还可 cout<<s<<endl;
    return 0;
}


#include <iostream>
#include <cstdio>
using namespace std;
int main() {
    char s;
    while (1) {
        s = getchar(); //每次调用getchar()函数,读入一个字符
        if (s == EOF) break;
        if ('a' <= s && s <= 'z') //如果这个字符是小写字母
            s += 'A' - 'a'; //把它转换成大写字母,这么写和上面是一样的
        putchar(s); //调用putchar()函数,输出一个字符
    }
    return 0;
}