输入字符串,要求将每个单词的第一个字母改为大写字母,并输出。 如“hello world!”改为“Hello World”
时间: 2024-03-25 15:40:00 浏览: 114
Java小程序 输入一个字符串,将每一个单词首字母大写
要将输入的字符串中每个单词的第一个字母改为大写字母,可以使用字符串处理函数和循环来实现。以下是一个示例函数的实现:
```c
#include <stdio.h>
#include <ctype.h>
void capitalize(char *str) {
int i = 0;
while (str[i]) {
if (isspace(str[i])) { // 如果当前字符是空格
i++; // 跳过空格
}
else {
str[i] = toupper(str[i]); // 将当前字符转换为大写字母
while (str[i] && !isspace(str[i])) { // 跳过当前单词中的其他字符
i++;
}
}
}
}
int main() {
char str[100];
printf("请输入字符串:");
fgets(str, 100, stdin); // 从标准输入读取字符串
capitalize(str);
printf("%s", str);
return 0;
}
```
在上面的代码中,我们定义了一个capitalize函数来实现字符串的处理。函数的参数是一个字符指针str,指向输入的字符串。
在函数内部,我们使用一个while循环遍历字符串中的每个字符。如果当前字符是空格,则跳过该字符;否则,将当前字符转换为大写字母,并使用另一个while循环跳过当前单词中的其他字符。
在main函数中,我们使用fgets函数从标准输入读取输入的字符串,并将其传递给capitalize函数进行处理。最后,我们打印处理后的字符串。
阅读全文