c语 含数字字符串实现大小写字母转
时间: 2024-10-09 17:09:04 浏览: 3
在C语言中,如果需要将包含数字和字母的字符串转换成全部大写或小写,可以使用标准库函数`toupper()`和`tolower()`来实现。这两个函数分别用于将字符转换为大写和小写。不过需要注意的是,这些函数只适用于ASCII字符集,并且只对单个字符有效。
以下是一个简单的示例,展示了如何遍历字符串并逐个字符转换:
```c
#include <ctype.h>
#include <stdio.h>
#include <string.h>
// 将字符串中的所有字符转换为大写
void to_upper(char* str) {
for (int i = 0; str[i] != '\0'; ++i) {
if (isalpha(str[i])) { // 检查是否为字母
str[i] = toupper(str[i]);
}
}
}
// 将字符串中的所有字符转换为小写
void to_lower(char* str) {
for (int i = 0; str[i] != '\0'; ++i) {
if (isalpha(str[i])) {
str[i] = tolower(str[i]);
}
}
}
int main() {
char str[] = "Hello123World!";
printf("Original string: %s\n", str);
to_upper(str);
printf("Uppercase string: %s\n", str);
to_lower(str);
printf("Lowercase string: %s\n", str);
return 0;
}
```
运行这个程序,你会看到原始字符串"Hello123World!"先变为"HELLO123WORLD!"再变为"hello123world!"。