用c语言实现大小写字母转换
时间: 2024-10-27 11:00:21 浏览: 91
在C语言中,可以使用ASCII码值来实现字母的大小写转换。ASCII码规定小写字母A~z的编码从97到122,大写字母A~Z的编码从65到90。因此,我们可以利用这个特性,通过取模运算将字符转换。
以下是两个简单的函数,分别用于将小写字母转为大写和大写字母转为小写:
```c
#include <stdio.h>
#include <ctype.h> // 引入ctype.h库,包含对字符分类的操作
// 将小写字母转换为大写
char to_uppercase(char c) {
if (islower(c)) {
return c - ('a' - 'A');
}
return c;
}
// 将大写字母转换为小写
char to_lowercase(char c) {
if (isupper(c)) {
return c + ('A' - 'a');
}
return c;
}
int main() {
char input[100];
printf("Enter a string: ");
fgets(input, sizeof(input), stdin);
// 转换并打印结果
for (int i = 0; input[i] != '\n'; i++) {
input[i] = to_uppercase(input[i]); // 调用to_uppercase
// 或者 input[i] = to_lowercase(input[i]); // 如果要转换为小写
}
printf("Uppercased string: %s\n", input);
return 0;
}
```
阅读全文