//6、 输入一英文句子,将其中所有单词首字符转换成大写后输出。(C语言)
//输入的时候可以包括数字和多个空格
#include<stdio.h>
#include<string.h>
void main()
{
int i = 0,word =0,count = 0;
char sentence[100];
//输入一句话并保存在一维数组中
printf("请输入一句话:\n");
fgets(sentence,sizeof(sentence),stdin);
//遍历字符串
for(i=0;sentence[i]!='\n';i++)
{
//遇到空格给word赋值为0,然后对下一个字符进行大写(大写的时候
//再对字母进行判断是否是a到z中的字母,如果是对其大写,若果不是不作处理原样输出)
if(sentence[i]==' ')
{
word=0;
}else if((word==0)&&(sentence[i]>='a')&&(sentence[i]<='z'))
{
word=1;
count++;
sentence[i]=sentence[i]-32;
}
}
//打印输出字符串
printf("输入字符串中的单词个数为%d\n",count);
puts(sentence);
} |