欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
用C語(yǔ)言編寫(xiě)一個(gè)函數,把一個(gè)字符串循環(huán)右移n位

http://c.biancheng.net/cpp/html/2803.html
2015
編寫(xiě)一個(gè)函數,把一個(gè)char組成的字符串循環(huán)右移n位。

編寫(xiě)一個(gè)函數,把一個(gè)char組成的字符串循環(huán)右移n位。例如,原來(lái)是“abcdefghi”,如果 n=2,移位后應該是“hiabcdefgh”。


函數原型如下:
  1. //pStr是指向以'\0'結尾的字符串的指針
  2. //steps是要求移動(dòng)的n位
  3. void LoopMove(char * pStr, int steps);

題目分析

這個(gè)題目主要考查讀者對標準庫函數的熟練程度,在需要的時(shí)候,引用庫函數可以很大程度上簡(jiǎn)化程序編寫(xiě)的工作量。

最頻繁被使用的庫函數包括strcpy()、memcpy()和memset()。

以下采用兩種方法來(lái)解答。

方法一代碼:
  1. #include <stdio.h>
  2. #include <string.h>
  3. #define MAX_LEN 100
  4. void LoopMove(char *pStr, int steps){
  5. int n = strlen(pStr) - steps;
  6. char tmp[MAX_LEN];
  7. memcpy(tmp, pStr+n, steps); //拷貝字符串
  8. memcpy(pStr+steps, pStr, n);
  9. memcpy(pStr, tmp, steps); //合并得到結果
  10. }
  11. int main(){
  12. char str[] = "www.coderbbs.com";
  13. LoopMove(str, 3);
  14. printf("%s\n", str);
  15. return 0;
  16. }

方法二代碼:
  1. #include <stdio.h>
  2. #include <string.h>
  3. #define MAX_LEN 100
  4. void LoopMove(char *pStr, int steps){
  5. int n = strlen(pStr) - steps;
  6. char tmp[MAX_LEN];
  7. strcpy(tmp, pStr+n); //拷貝字符串
  8. strcpy(tmp+steps, pStr);
  9. *(tmp + strlen(pStr)) = '\0';
  10. strcpy(pStr, tmp); //合并得到結果
  11. }
  12. int main(){
  13. char str[] = "www.coderbbs.com";
  14. LoopMove(str, 3);
  15. printf("%s\n", str);
  16. return 0;
  17. }
輸出結果:
comwww.coderbbs.
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
【編程練習】字符串循環(huán)右移
作用是把一個(gè)char組成的字符串循環(huán)右移n個(gè)
字符串移位:如“abcdefghi”右移2位后變成“cdefghiab”
LoopMove
可以通過(guò)函數strncat strcat實(shí)現從字符加入到字符串中
經(jīng)典C/C++算法
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久