牛客网:https://www.nowcoder.com/share/jump/4452240231763037053152
题目为:

根据题目,我们要先输入一行带空格的字符串,然后对每个单词进行分割,最后输出单词的首字母
代码如下:
#include<stdio.h>
#include<string.h>
#include<ctype.h>
int main()
{
//现在定义复合字符的长度数组
char str[6000]={0};
//现在定义分割之后的字符数组
char word[105][55]={0};
//现在定义分隔符
char set[]=" ";
fgets(str,sizeof(str),stdin);
//使用strtok函数将复合字符串分开
char* new = NULL;
int i=0;
for(new = strtok(str,set);new!=NULL;new = strtok(NULL,set))
{
//使用strcpy复制函数将new指向的字串复制到word上
strcpy(word[i],new);
i++;
}
for(int j=0;j<i;j++)
{
printf("%c",toupper(word[j][0]));
}
return 0;
}直接输入单词,而不是当成字符串来输入
代码如下:
#include<stdio.h>
#include<string.h>
#include<ctype.h>
int main()
{
char str[100]={0}; //创建一个可以容纳100个单词的数组
while(scanf("%s",str)!=EOF)
{
if(str[0]>='a'&&str[0]<='z')
{
printf("%c",toupper(str[0]));
}
else
{
printf("%c",str[0]);
}
}
return 0;
}文章是自己写的哈,有啥描述不对的、不恰当的地方,恳请大佬指正,看到后会第一时间修改,感谢您的阅读。