天天看点

1009 说反话 (20 分)(C语言)

给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。

输入格式:

测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用 1 个空格分开,输入保证句子末尾没有多余的空格。

输出格式:

每个测试用例的输出占一行,输出倒序后的句子。

输入样例:

Hello World Here I Come
           

输出样例:

Come I Here World Hello
           

小仙女的思路: 把每个单词分别保存在二维数组的一行中,最后反过来打印二维数组就可以啦

小仙女的代码:(如有雷同就是缘分,转载请注明出处)

#include <stdio.h>
int main()
{
	char a[80][80];
	char ch;
	int i,j;
	ch=getchar();
	for(i=0,j=0;ch!='\n';j++)//将单词分别保存在每行中
	{
		if(ch==' ')//如果是空格那么说明要到下一个单词了,换下一行
		{
			i++;
			j=0;
			ch=getchar();
		}
		a[i][j]=ch;
		ch=getchar();
	}
	while(i>0)//从后往前打印每行
	{
		printf("%s ",a[i]);
		i--; 
	 } 
	 printf("%s",a[i]);
	 return 0;
}
           

继续阅读