输入一个英文句子,将每个单词的第一个字母改成大写字母。 输入格式 输入数据包含多个测试实例,每个测试实例是一个长度不超过100的英文句子,占一行。 输出格式 请输出按照要求改写后的英文句子。
时间: 2024-09-28 09:11:57 浏览: 34
要实现这个功能,你可以使用C语言中的字符串处理函数和循环结构。以下是一个简单的程序,它遍历输入的字符串,首字母大写其余小写的处理方式:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
void capitalize_first_letter(char *sentence) {
if (sentence[0] != '\0') { // 如果字符串非空
sentence[0] = toupper(sentence[0]); // 将第一个字符转为大写
for (int i = 1; i < strlen(sentence); i++) {
sentence[i] = tolower(sentence[i]); // 其他字符转为小写
}
}
}
int main() {
char input_sentence[101]; // 存储输入的英文句子
while (fgets(input_sentence, sizeof(input_sentence), stdin)) { // 从标准输入读取一行
input_sentence[strcspn(input_sentence, "\n")] = '\0'; // 去掉行尾的换行符
capitalize_first_letter(input_sentence);
printf("%s\n", input_sentence); // 输出结果
}
return 0;
}
```
在这个程序中,`capitalize_first_letter` 函数接收一个字符串并改变其首字母。主函数通过`fgets`读取用户输入的每一行,然后调用该函数进行处理,最后用`printf`打印出来。
阅读全文