https://pintia.cn/problem-sets/994805260223102976/problems/994805314941992960
朴素写法:
#include<stdio.h>
#include<string.h>
int main(void)
{
int num=0;
int i,h;
char a[90];
char ans[90][90];
gets(a);
for(i=0;i<strlen(a);i++)
{
if(a[i]!=' ')
{
ans[num][h++]=a[i];
}
else
{
ans[num][h]='\0';
num++;
h=0;
}
}
for(i=num;i>=0;i--)
{
printf("%s",ans[i]);
if(i>0)
printf(" ");
}
return 0;
}
精简写法:
#include<cstdio>
#include<iostream>
#include<string>
#include<sstream>
#include<vector>
using namespace std;
int main(void)
{
string s;
getline(cin,s);
vector<string> ve;
string ans;
stringstream ll(s);
while(ll>>ans) ve.push_back(ans);
for(int i=ve.size()-1;i>=0;i--)
{
cout<<ve[i];
if(i!=0) cout<<" ";
}
}
#include<bits/stdc++.h>
using namespace std;
vector<string>ve;
int main(void)
{
string s;
while(cin>>s) ve.push_back(s);
for(int i=ve.size()-1;i>=0;i--)
{
cout<<ve[i];
if(i) cout<<" ";
}
}