指针法
#include<stdio.h>
#include<string.h>
void copystr(char *a,char *b,int m)
{
a=a+m-1;
while(*a!='\0')
{
*b=*a;
b++;
a++;
}
*b='\0';
}
int main()
{
char a[100],b[100];
int m;
gets(a);
printf("which character begin to copy?");
scanf("%d",&m);
if(strlen(a)<m||strlen(a)<0)
printf("error");
else
copystr(a,b,m);
puts(b);
return 0;
}
数组法
#include<stdio.h>
#include<string.h>
void copystr(char a[100],char b[100],int m)
{
int i;
for(i=0;a[i]!='\0';i++)
b[i]=a[i+m-1];
b[i]='\0';
}
int main()
{
int m;
char a[100],b[100];
gets(a);
printf("which character that begin to copy?");
scanf("%d",&m);
if(strlen(a)<m||strlen(a)<0)
printf("error");
else
copystr(a,b,m);
printf("result=%s\n",b);
return 0;
}