描述
编写程序,读入一行英文(只包含字母和空格,单词间以单个空格分隔),将所有单词的顺序倒排并输出,依然以单个空格分隔。
输入
输入为一个字符串(字符串长度至多为100)。
输出
输出为按要求排序后的字符串。
样例输入
I am a student
样例输出
student a am I
#include<stdio.h>
#include<string.h>
int main()
{
char a[101]={0};
int i,j,len,t;
gets(a);
len=strlen(a);
t=len;
for(i=len-1;i>=0;i--) //从字符串的最后进行遍历
{
if(a[i]==' ') //当遇到的字符为空格时,说明此时已找到了一个完整的单词,位置是i~t-1
{
for(j=i+1;j<=t-1;j++) //从空格的后面一个字符打印到第t-1个字符
{
printf("%c",a[j]);
}
printf(" "); //打印空格
t=i; //a[i]字符为空格,把第i个位置赋值给t,以后的打印到t-1为止
}
}
for(j=0;j<t;j++) //第一个单词无法再遇到空格来启动打印,所以第一个单词需要从头开始打印,打印到第一个空格的位置,而这个位置恰好是t,所以打印到t-1即可
{
printf("%c",a[j]);
}
return 0;
}
&spm=1001.2101.3001.5002&articleId=129542981&d=1&t=3&u=40d3eb39a1134044bd79f415c320c1e1)
4287

被折叠的 条评论
为什么被折叠?



