问题描述:
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。
输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。
输出格式:每个测试用例的输出占一行,输出倒序后的句子。
输入样例:Hello World Here I Come
输出样例:
Come I Here World Hello
分析:题目不难,可以利用字符指针数组来做,但要new出空间。
scanf("%s%s",&str1,&str2)是以空格号为字符的分隔符。
代码如下:
#include<stdio.h>
int main()
{
char*word[100];
for(int i=0;i<100;i++)
word[i]=new char[10];//.c文件不支持new,提交的是否用c++
int num=0;
int j=0;
while(scanf("%s",word[num])!=EOF)
num++;
for( j=num-1;j>0;j--)
printf("%s ",word[j]);
printf("%s\n",word[j]);
return 0;
}