用C语言,该程序完成从键盘输入一个字符串,将字符串中的大写字母转换成小写字母后进行输出的功能。
时间: 2024-02-05 11:10:29 浏览: 102
以下是一个示例程序:
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("Enter a string: ");
fgets(str, 100, stdin); // 从键盘读入字符串
for (int i = 0; i < strlen(str); i++) {
if (str[i] >= 'A' && str[i] <= 'Z') {
str[i] += 32; // 转换为小写字母
}
}
printf("Result: %s", str);
return 0;
}
程序首先提示用户输入一个字符串,然后使用 fgets()
函数从键盘读入字符串并存储到 str
数组中。接着使用一个循环遍历字符串中的每个字符,如果该字符是大写字母,则将其转换为小写字母。最后输出转换后的字符串。
相关问题
该程序完成从键盘输入一个字符串,将字符串中的大写字母转换成小写字母后进行输出的功能。C语言
可以使用C语言的库函数tolower()
来将大写字母转换成小写字母,代码如下:
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
printf("请输入一个字符串:");
fgets(str, 100, stdin); // 从键盘输入字符串
for (int i = 0; str[i] != '\0'; i++) {
if (isupper(str[i])) { // 判断是否为大写字母
str[i] = tolower(str[i]); // 转换为小写字母
}
}
printf("转换后的字符串为:%s", str);
return 0;
}
其中,isupper()
函数用于判断字符是否为大写字母,tolower()
函数用于将字符转换为小写字母。fgets()
函数用于从键盘读入字符串,避免使用scanf()
函数可能会出现的缓冲区溢出问题。
该程序完成从键盘输入一个字符串,C语言将字符串中的大写字母转换成小写字母后进行输出的功能。
以下是一个示例代码:
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
printf("请输入一个字符串:");
fgets(str, sizeof(str), stdin);
int i = 0;
while (str[i] != '\0') {
str[i] = tolower(str[i]);
i++;
}
printf("转换后的字符串:%s", str);
return 0;
}
代码解释:
- 首先定义一个字符数组
str
,用于存储输入的字符串。 - 使用
fgets()
函数从标准输入读取一行字符串,并将其存储到str
中。这里使用sizeof(str)
来指定读取的字符串长度,避免输入字符串过长导致缓冲区溢出。 - 使用
tolower()
函数将str
中的大写字母转换成小写字母。具体来说,该函数会将大写字母转换成相应的小写字母,而对于非字母字符则不做处理。 - 使用一个循环遍历
str
中的每个字符,并调用tolower()
函数进行转换。 - 最后,输出转换后的字符串。注意,这里使用
%s
格式化字符数组的输出,因为str
已经是以\0
结尾的字符串了。
相关推荐













