输入格式
输入一行,一个字符串。
输出格式
输出一个字符串,即将原字符串中的所有小写字母转化为大写字母。
输入输出样例
输入
Luogu4!
输出
LUOGU4!
思路:
利用ASCll码将小写字母转换为大写字母。循环遍历字符串的每个字符,如果是小写字母(通过判断其 ASCII 码范围),则将其减去 32 转换为大写字母。
#include<stdio.h>
#include<string.h>
int main()
{
char s[100];
gets(s);
for (int i = 0; s[i] != '\0'; i++)
{
if (s[i] >= 'a' && s[i] <= 'z')
s[i] = s[i] - 32;
}
puts(s);
return 0;
}
以下是对代码的详细解释:
char s[100];
:定义一个字符数组s
来存储输入的字符串,长度为 100。gets(s);
:用于获取用户输入的字符串并存储到s
中。for
循环遍历字符串的每个字符,如果是小写字母(通过判断其 ASCII 码范围),则将其减去 32 转换为大写字母。puts(s);
:输出转换后的字符串。-
在这个代码中,
s[i]!='\0'
是作为循环结束的条件。字符串在内存中是以字符数组的形式存储的,并且最后一个字符是
'\0'
来表示字符串的结束。通过不断检查当前字符是否为'\0'
,可以确保在遍历完整个有效的字符串内容后停止循环,避免越界访问或进入无效的内存区域。这样就可以逐个处理字符串中的每个字符,直到遇到字符串结束标志为止。