c语言程序设计。从键盘输入字符串a,a中有若干个单词且单词间由一个或者多个空格相隔,字符串的开头和结尾也可能存在空格。设计一个程序将字符串a中每一个单词的首字母按照顺序放入字符串b中,并输出字符串b。
时间: 2024-02-28 10:55:36 浏览: 66
用c语言实现 计算一个字符串中单词的个数
5星 · 资源好评率100%
好的,根据您的需求,可以使用以下代码实现:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char a[100], b[100];
int i, j = 0, len;
printf("请输入一个字符串:");
gets(a);
len = strlen(a);
for (i = 0; i < len; i++) {
if (a[i] != ' ') {
b[j] = a[i];
j++;
}
else if (a[i] == ' ' && a[i - 1] != ' ' && i != 0) {
b[j] = a[i];
j++;
}
}
b[j] = '\0';
printf("输出结果为:\n%s", b);
return 0;
}
```
在这段代码中,我们使用了两个字符数组 `a` 和 `b` 来分别存储输入的字符串和输出的结果。
我们使用 `gets()` 函数来从键盘输入字符串,然后使用 `strlen()` 函数获取字符串长度。
接着我们使用一个循环遍历字符串 `a` 中的每个字符,当遇到非空格字符时,将该字符存储到字符串 `b` 中,并将指针 `j` 加 1。当遇到空格字符时,判断前一个字符是否为空格字符,如果不是则将该字符存储到字符串 `b` 中,并将指针 `j` 加 1。
最后,我们在字符串 `b` 的末尾添加一个结束符 `\0`,并将其输出即可。
希望能够帮到您!
阅读全文