1205 单词翻转

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1205 单词翻转相关的知识,希望对你有一定的参考价值。

题目描述 Description

给出一个英语句子,希望你把句子里的单词顺序都翻转过来

输入描述 Input Description

输入包括一个英语句子。

输出描述 Output Description

按单词的顺序把单词倒序输出

样例输入 Sample Input

I love you

样例输出 Sample Output

you love I

思路:把句子以字符串存储在数组中,通过空格分隔单词。从最后一个空格开始输出单词即可

#include<stdio.h>
#include<string.h>
int main()
{
char s[1000];
int index[100],i,j=0,len,l;
gets(s);//获取英文句子
len=strlen(s);//句子长度
for(i=0;i<len;i++)//找出所有空格的索引位置
{
if(s[i]==‘ ‘)
{
index[j++]=i;
}
}
for(i=j-1;i>=0;i--)//从左后一个空格开始向后输出“单词” ,最后一个单词遇到字符数组
//结束符结束,中间单词遇到后面的空格结束,注意这里漏掉了第一个单词
{
for(l=index[i]+1;l<len;l++)
{
if(s[l]==‘ ‘)
{
break;
}
printf("%c",s[l]);
}
printf(" ");
}
//输出第一个单词,在最后一个字母时换行
for(l=index[0]-1;l>0;l--)
{
printf("%c",s[l]);
}
printf("%c\n",s[l]);
return 0;
}

以上是关于1205 单词翻转的主要内容,如果未能解决你的问题,请参考以下文章

Codevs 1205 单词翻转

codevs-1205

单词翻转

4104:单词翻转

27:单词翻转

编程题#1:单词翻转