可以用c语言实现上列功能吗
时间: 2023-09-16 21:12:46 浏览: 27
当然可以,你可以使用以下C语言代码实现此功能:
```c
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main() {
char str[4][81]; // 声明一个二维字符数组,存储输入的字符串
for (int i = 0; i < 4; i++) {
fgets(str[i], 81, stdin); // 读取一行字符串
int len = strlen(str[i]); // 获取字符串长度
int flag = 1; // 标记是否已经修改过字母
for (int j = 0; j < len; j++) {
if (isspace(str[i][j])) {
flag = 1; // 遇到空格,将标记重新设为1
} else if (isalpha(str[i][j]) && flag) {
str[i][j] = toupper(str[i][j]); // 将第一个英文字母改为大写
flag = 0; // 修改完毕,将标记设为0
}
}
printf("%s", str[i]); // 输出修改后的字符串
}
return 0;
}
```
在上面的代码中,我们使用了`fgets()`函数逐行读取字符串,并使用`strlen()`函数获取字符串长度。接下来,我们使用一个`flag`变量来标记是否已经修改过字母。对于每个字符,如果遇到空格,就将`flag`重新设为1;如果遇到英文字母并且`flag`为1,就将该字母改为大写,并将`flag`设为0。最后,使用`printf()`语句输出修改后的字符串。