输入自己名字首字母的大写,并将其转换成小写字母。
时间: 2024-09-18 22:17:32 浏览: 51
要完成这个任务,你可以使用C语言中的`ctype.h`库来获取字符的大小写并进行转换。首先,获取姓名的第一个字母,然后大写化,再转为小写。以下是一个简单的示例代码:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
void convert_case(char *name) {
if (strlen(name) == 0) {
printf("Name cannot be empty.\n");
return;
}
char first_char = tolower(name[0]); // 将第一个字符转换为小写
name[0] = toupper(first_char); // 将第一个字符转换为大写
// 如果还有其他字符,循环处理直到第一个空格(假设名字由首字母和姓氏组成)
for (size_t i = 1; name[i]; i++) {
if (isspace(name[i])) {
break; // 遇到空格后结束
}
name[i] = tolower(name[i]); // 将非首字母转换为小写
}
}
int main() {
char input_name[50];
printf("Enter your name: ");
fgets(input_name, sizeof(input_name), stdin);
input_name[strcspn(input_name, "\n")] = '\0'; // 去除fgets读取的换行符
convert_case(input_name);
printf("Modified name: %s\n", input_name);
return 0;
}
```
在这个程序中,我们首先从用户那里获取输入的名字,然后调用`convert_case`函数处理首字母。该函数会先将首字母转换为大写,然后遍历后续字符并将它们转换为小写,直到遇到空格为止。
阅读全文