给一个我没注意到的输入样例吧。
1
abc def p//单词之间超多空格
#include<iostream>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<cstdlib>
using namespace std;
int main()
{
int t;
char s[1005],s1[1005];
int num;
while(cin>>t)
{getchar();//回车
while(t--)
{
gets(s);//输入带空格的字符串
num = 0;
for(int i=0;s[i]!='\0';i++)
{
if(s[i]==' ')
{
if(s[i-1]!=' ')//单词和空格的交界处
{
for(int j=num-1;j>=0;j--)//倒序输出
{
cout<<s1[j];
}
num=0;
}
cout<<s[i];//空格还是得好好输出的
}else{//不是空格存入字符串数组
s1[num++] = s[i];
}
}
for(int j=num-1;j>=0;j--)//若字符串末尾是一个单词
{
cout<<s1[j];
}
cout<<endl;
}
}
return 0;
}
做题时还是得好好想那些稀奇古怪的测试样例。。。。嘤嘤嘤~~~~~~