(C语言编程)输入一个英文句子,将每个英文单词的头字母变为大写,单词之间用空格隔开
来源:学生作业帮助网 编辑:作业帮 时间:2024/05/11 02:54:03
(C语言编程)输入一个英文句子,将每个英文单词的头字母变为大写,单词之间用空格隔开
(C语言编程)输入一个英文句子,将每个英文单词的头字母变为大写,单词之间用空格隔开
(C语言编程)输入一个英文句子,将每个英文单词的头字母变为大写,单词之间用空格隔开
程序已在dev-c++下编译确认:
/*提取用空格分隔的字符串中的单词,并改单词首字母为大写*/
#include
#include
#include
int partition(char *s1,char *s2,int pos)
{
int i,j;
i=pos;
while(s1[i]==' ')
i++;
if(s1[i]!='\0')
{
j=0;
while(s1[i]!='\0'&&s1[i]!=' ')
{
s2[j]=s1[i];
i++;
j++;
}
s2[j]='\0';
s2[0]=toupper(s2[0]);
return i;
}
else
return -1;
}
int main()
{
char string[256];
char partition_string[20];
int position;
int k;
printf("\nPlease input a string:");
gets(string);
position=0;
printf("\nThe result:\n");
k=0;
while((position=partition(string,partition_string,position))!=-1)
{
k++;
printf("%s ",partition_string);
}
printf("\n");
system("pause");
return 0;
}