问:请编程实现一个函数,其功能为:把字符串循环右移n个字符,例如,字符串”abcdefghi“右移3个字符后变为”ghiabcdef“。
2019-03-13 15:30
597 查看
问:请编程实现一个函数,其功能为:把字符串循环右移n个字符,例如,字符串”abcdefghi“右移3个字符后变为”ghiabcdef“。
答:
int str_loop_right_shift(char* str,const unsigned short n)
{
int len=0;
char* tmp;
len = strlen(str);
if(NULL == str || !(n%len))
{
return -1;
}
tmp = (char*)malloc(len);
if(NULL == tmp)
{
return -1;
}
strcpy(tmp,str+len-n);
strcpy(tmp+n,str);
*(tmp+len) = '\0';
strcpy(str,tmp);
free(tmp);
return 0;
}
相关文章推荐
- 10.6 分别用字符数组和字符指针作函数参数两种方法编程实现在字符串每个字符间插入一个空格的功能
- 1.实现一个函数,可以左旋字符串中的k个字符。 AABCD左旋一个字符得到ABCDA AABCD左旋两个字符得到BCDAA 2.判断一个字符串是否为另外一个字符串旋转之后的字符串。 例如:给定s1
- 1.实现一个函数,可以左旋字符串中的k个字符。 AABCD左旋一个字符得到ABCDA AABCD左旋两个字符得到BCDAA 2.判断一个字符串是否为另外一个字符串旋转之后的字符串。 例如:给定s1
- 实现一个函数,可以左旋字符串中的k个字符.ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB
- 编写一个函数,作用是把一个char组成的字符串循环右移n个。比如原来是“abcdefghi”如果n=2,移位后应该是“hiabcdefgh”
- 请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字
- //3.实现一个函数,可以左旋字符串中的k个字符。 //ABCD左旋一个字符得到BCDA //ABCD左旋两个字符得到CDAB
- 设计一个函数实现将一个字符串中的大写字符变为小写字符,小写字符变为大写字符,数字不变,删除其他字符
- 编写一个函数,作用是把一个char组成的字符串循环右移n个。比如原来是“abcdefghi”如果n=2,移位后应该是“hiabcdefgh”
- 字符串替换空格: 请实现一个函数,把字符数组中的每个空格替换成“%20”。 例如输入“we are happy.”,则输出“we are happy.”
- 【编程之法】如何最快的判断出短字符串b中的所有字符是否都在长字符串a中?编写函数bool StringContain(string&b,string&a)实现此功能。
- 例如:把一个char 组成的字符串循环右移 n 位,原来是 ”abcdefghi“,如果 n = 2,移位后应该是 ”hiabcdefgh“
- 实现一个函数,可以左旋字符串中的k个字符。 ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB
- 1.实现一个函数,可以左旋字符串中的k个字符。 ABCD左旋一个字符得到BCDA
- 请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"ab*ac*a"匹配,但是与"aa.a"和"ab*a"均不匹配
- .实现一个函数,可以左旋字符串中的k个字符。 AABCD左旋一个字符得到ABCDA AABCD左旋两个字符得到BCDAA
- 【编程之法】如何最快的判断出短字符串b中的所有字符是否都在长字符串a中?编写函数bool StringContain(string&b,string&a)实现此功能。
- C语言练习题:编写函数,该函数的功能是:移动字符串中的内容,移动的规则如下::把第1到第m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。例如,字符串原有的内容为ABCDEFGHI,m的值为4,移动后,字符串中的内容应该是EFGHIABCD
- 编写函数fun(char *s),其功能是:把字符串中所有字符前移一个位置,串中的第1个字符移到最后。 例如,若输入字符串为:ABC123xyz ,则应输出字符串: BC123xyzA 。
- 请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字