1. 程式人生 > >字串右移n位

字串右移n位

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow

也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!

               

題目:實現字串右移幾位,即 abcd 移兩位變 cdab 

思路:

  1. 申請一個與待移位同樣大小的陣列,用來儲存移位後的字串
  2. 通過公式計算出簡化的移位數
  3. 得到某字元移位後的新位置後,就將其字元值存放到新陣列的對應位置
  4. 迴圈第3步。直至檢測到字串結尾處
  5. 將新陣列的最後一個位置賦 '\0'
  6. 輸出移位後的字串

#include <iostream>using namespace std;int main()while (1) {  int    n;     //移位數  int    index=0;    //記錄待移位字串的陣列下標  int
    move_num=0;   //記錄簡化的移位數  char   str[]="test";  //待移位字串  int    length = strlen(str);  char  *new_str= new char[length+1];  cin >> n;  move_num = n % length;       while
(*(str + index))  {   new_str[(index + move_num) % length] = *(str + index);   index++;  }  new_str[length+1] = '\0'; //別忘記加上結束符  cout << new_str << endl; } return   0;}



後續會增加不同的解法 :)



           

給我老師的人工智慧教程打call!http://blog.csdn.net/jiangjunshow

這裡寫圖片描述