输入一个英文句子,将每个单词的第一个字母改成大写字母。C语言
时间: 2024-05-04 15:17:29 浏览: 158
可以使用C语言中的字符串处理函数和循环来实现这个功能。以下是示例代码:
```c
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main() {
char sentence[100];
printf("请输入一个英文句子:");
fgets(sentence, sizeof(sentence), stdin);
int len = strlen(sentence);
for (int i = 0; i < len; i++) {
if (i == 0 || isspace(sentence[i - 1])) {
sentence[i] = toupper(sentence[i]);
}
}
printf("修改后的句子为:%s\n", sentence);
return 0;
}
```
首先输入一个英文句子,使用fgets函数读取整行输入。然后使用循环遍历整个字符串,判断当前字符是否是单词的第一个字母,如果是,则使用toupper函数将其转换成大写字母。最后输出修改后的句子。
相关问题
输入一个英文句子,将每个单词的第一个字母改成大写字母用c语言
在C语言中,可以使用标准库函数`toupper()`和字符串处理函数来实现这个功能。下面是一个简单的示例程序,它接受用户输入的英文句子,然后将每个单词的第一个字母转换成大写:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
// 函数来首字母大写处理单词
void capitalize(char *word) {
if (word[0] != '\0') {
word[0] = toupper(word[0]);
}
}
int main() {
char sentence[1000];
printf("请输入一个英文句子: ");
fgets(sentence, sizeof(sentence), stdin); // 注意这里要移除换行符
// 分离单词并处理每个单词
char *token = strtok(sentence, " "); // 使用空格分隔单词
while (token != NULL) {
capitalize(token);
printf("%s ", token); // 输出当前单词
token = strtok(NULL, " ");
}
return 0;
}
```
当你运行这个程序时,它会提示你输入一个英文句子,然后输出每个单词的首字母大写的版本。
输入一个小写英文句子,将每个单词的第一个字母改成大写字母.用C语言
在C语言中,你可以使用标准库函数`toupper()`和字符串处理来实现这个功能。下面是一个简单的示例程序,它接受用户输入的小写英文句子并将其首字母大写:
```c
#include <stdio.h>
#include <ctype.h> // 包含 toupper 函数
// 函数来转换单个字符的大写
char to_upper_case(char c) {
return (c >= 'a' && c <= 'z') ? c + ('A' - 'a') : c;
}
int main() {
char sentence[100];
printf("请输入一个英文句子(小写):");
fgets(sentence, sizeof(sentence), stdin); // 读取用户输入
sentence[strlen(sentence) - 1] = '\0'; // 去掉换行符
// 遍历字符串,对每个单词的首字母应用 to_upper_case 函数
for(int i = 0; i < strlen(sentence); ) {
if(sentence[i] == ' ') { // 如果遇到空格,说明单词结束
sentence[i] = toupper(sentence[i]); // 转换首字母为大写
++i;
} else {
sentence[i++] = to_upper_case(sentence[i]);
}
}
printf("转换后的句子是:%s\n", sentence);
return 0;
}
```
阅读全文