- 编写一个函数,作用是把一个 char 组成的字符串循环右移 n 个。比如原来是“abcdefghi”
- 如果 n=2,移位后应该是“hiabcdefgh”
- 分析:将字符串相加如:abcdefghi----》abcdefghiabcdefghi。这样可以解决右移次数较少的情况。
- 代码如下:
对于次数较大的情况,我还会跟进,谢谢。char* rightloopmove(char *p,unsigned int steps,int n) { for(int i=steps,j=0;j<n;i++,j++) { p[j]=p[i]; } p[n]='\0'; return p; } int main() { char str[]="acdrfhj"; int num=strlen(str); memcpy(str+7,str,7); str[14]='\0'; rightloopmove(str,2,num); cout<<str; system("pause"); return 0; }
字符串右移函数
最新推荐文章于 2023-10-27 14:03:26 发布