请编写函数,求右子串。
函数原型
char* StrRight(char *dst, const char *src, int len);
说明:函数取源串 src 的后 len 个字符,保存到目的串 dst 中,函数值为 dst。若 len 值不正确,则自动修正。
裁判程序
#include <stdio.h> char* StrRight(char *dst, const char *src, int len); int main() { char a[128], b[128]; int n; gets(a); scanf("%d", &n); StrRight(b, a, n); puts(b); return 0; } /* 你提交的代码将被嵌在这里 */
输入样例1
abcd
2
输出样例1
cd
输入样例2
abcd
8
注:8 不正确,按 4 处理。
输出样例2
abcd
输入样例3
abcd
-5
注:-5 不正确,按 0 处理。
输出样例3
注:输出为空串。
char* StrRight(char *dst, const char *src, int len)
{
int i=0,j=0;
if(len<=0)
{
*dst='\0';
return dst;
}
else if(len>strlen(src))
{
i=0;
while(src[i]!='\0')
{
dst[j++]=src[i++];
}
dst[j]='\0';
return dst;
}
else
{
i=strlen(src)-len;
while(src[i]!='\0')
dst[j++]=src[i++];
dst[j]='\0';
return dst;
}
}