您的位置:首页 > 其它

句子以单词为单位逆序

2015-06-15 21:55 309 查看
/*所有单词之间用一个空格隔开,句中除了英文字母,不再包含其他

e.g. Input: i am a girl

Output: girl a am i

*/

#include<iostream>

#include<cstring>

using namespace std;

char* Inversion(char* s,char* st_output,int len);//功能函数

int main()

{

char s[100];

cin.getline(s,100);

int len=strlen(s);

char st_output[len];

Inversion(s,st_output,len);

cout<<"Befor inversion: "<<s<<endl;

cout<<"After inversion: "<<st_output<<endl;

return 0;

}

char* Inversion(char* s,char* st_output,int len)

{

int j=0;

char st_tmp[len];

for(int i=len-1;i>=0;i--)

st_tmp[j++]=s[i];

st_tmp[j]='\0';

// cout<<st_tmp<<endl;

int tmp=0,k;

for(int i=0;i<=len;i++)

{

if(st_tmp[i]==' '||st_tmp[i]=='\0')

{

j=i-1;

for(k=tmp;k<i;k++)

st_output[k]=st_tmp[j--];

st_output[k]=' ';

tmp=k+1;

}

}

st_output[len]='\0';

return st_output;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: