字符串翻转问题

来源:互联网 发布:淘宝网店货源代理 编辑:程序博客网 时间:2024/06/14 20:49

笔试题:

字符串翻转问题: 给定一个 “hello world”,将字符串翻转输出“world hello”;


#include <iostream>#include <stdlib.h>using namespace std;char  str[] = "This translation ah well";inline void swapstr(char &a,char &b){    a=a^b,b=a^b,a=a^b;}void stringreverse(char *s,int n){    int i,j;    for(i=0,j=n-1;i<j;i++,j--)        swapstr(s[i],s[j]);}void print(char *s){    int i=0;    for(i=0;i<strlen(s)&&s[i]!='\0';i++)        cout<<s[i];    cout<<endl;}int main(){    int i;    int n=strlen(str);    stringreverse(str,n);    print(str);    for(i=0;str[i]!='\0'&&i<strlen(str);i++)    {        int j=0;        while(str[i]!=' '&&str[i]!='\0')            j++,i++;        stringreverse(str+i-j,j);    }    print(str);    return 0;}

注:如验证有问题,还请提出;谢谢~~~


原创粉丝点击