输入一句英文,然后将每个单词的第一个字母改为大写,输出最后结果。用C语言编程
时间: 2024-10-24 13:06:16 浏览: 23
c代码-4. 功能:从键盘中输入一个大写字母,要求改用小写字母输出。
在C语言中,要实现这个功能,你可以使用标准库函数`toupper()`和`isalpha()`来检查每个字符是否为小写字母,并转换为大写。下面是一个简单的示例程序:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
// 将字符串首字母转为大写
void capitalize(char* str) {
if (str && *str) { // 检查字符串非空
int len = strlen(str);
if (islower(*str)) { // 如果第一个字符是小写
*str = toupper(*str); // 转换为大写
}
for (int i = 1; i < len; i++) {
if (isalpha(str[i])) { // 检查每个单词的首字母
str[i] = toupper(str[i]);
}
}
}
}
int main() {
char input[100];
printf("请输入一个英文句子:");
fgets(input, sizeof(input), stdin);
// 去掉fgets读取的换行符
input[strcspn(input, "\n")] = '\0';
capitalize(input);
printf("首字母大写的句子:%s\n", input);
return 0;
}
```
在这个程序中,用户输入一个英文句子,`capitalize`函数会遍历每个单词,将第一个字母转换为大写。注意,由于`fgets`可能会包含换行符,所以在打印前需要处理。
阅读全文