分享

C++ 笔试 基础之 07 将字符串的前N个字符平移到字符串的后面

 雪柳花明 2017-02-16
/*
将字符串的前N个字符平移到字符串的后面,用string的特性实现
*/ 
   
 
 


#include <iostream> 
#include <string> 
   
using namespace std; 
   
string func(string str, int N) 
    int len = str.length(); 
    if (len==0 || N<=0) 
        return str; 
    if (N > len) 
        N = N % len; 
    string str1; 
    string str2; 
    str1.assign(str, 0, N); //将str中前N个字符拷贝到str1中 
    str2.assign(str, N, len-N); 
     //将str从第N+1个字符开始的len-N个字符赋给当前字符串 
    str = str2 + str1; 
   
    return str; 
   
int main() 
    string str = "ABCDE"
    cout << func(str, 3) << endl; 
//输出:DEABC 
     //这里的3是从1,2,3开始的,即这里的3即代表字符C,即把ABC右移
   
    return 0; 
}  


另一种方法:
 
 
字符串部分逆序


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多