编程序,输入有一个英文句子,将每个单词的第一个字母改为大写。(使用指针)
时间: 2023-04-26 21:04:05 浏览: 669
Java小程序 输入一个字符串,将每一个单词首字母大写
以下是使用指针来实现输入英文句子并将每个单词的第一个字母改为大写的示例代码:
```c
#include <stdio.h>
#include <ctype.h>
void capitalize(char* str) {
int i = 0;
while (str[i] != '\0') {
if (i == 0 || isspace(str[i - 1])) {
str[i] = toupper(str[i]);
}
i++;
}
}
int main() {
char str[100];
printf("请输入一个英文句子:\n");
fgets(str, 100, stdin);
capitalize(str);
printf("修改后的句子为:%s\n", str);
return 0;
}
```
这个程序首先定义了一个 `capitalize` 函数,用来将一个字符串中每个单词的首字母改为大写。在 `main` 函数中,程序使用 `fgets` 函数读取用户输入的字符串,并将它传递给 `capitalize` 函数进行处理。最后,程序输出修改后的字符串。
`capitalize` 函数使用了一个 `i` 变量来遍历字符串中的每个字符。当它找到一个单词的第一个字母时,它会使用 `toupper` 函数将它改为大写字母。判断一个字符是否是单词的第一个字母,程序使用了 `isspace` 函数判断它的前一个字符是否是空格。
阅读全文