编写程序,将字符串中的第m个字符开始的全部字符复制到另一个字符串中。要求在主函数中输入字符串及m的值,并输出复制结果,在被调函数中完成复制。
#include<stdio.h>
char main()
{
int m;
char a[10],*p;
gets(a);
scanf("%d",&m);
for(p=&a[m-1];p<=&a[9];p++)
printf("%c",*p);
return 0;
}
有帮助的话采纳一下哦!
#include <stdio.h>
void fun(char *str,int m,char *target);
int main(){
int m;
char str[256],target[256];
gets(str);
scanf("%d",&m);
fun(str,m,target);
puts(target);
return 0;
}
void fun(char *str,int m,char *target){
char *s = target;
str += m - 1;
while(*str != '\0'){
*s = *str;
str ++;
s ++;
}
*s = '\0';
}
#include <stdio.h>
#include <string.h>
#include <assert.h>
#define N 256
void copy(char dst[], const char *src, int pos)
{
const char *p = src + pos;
char *q = dst;
while (*p)
*q++ = *p++;
*q = '\0';
}
int main()
{
char a[N], b[N];
int m;
scanf("%s", a);
scanf("%d", &m);
assert(m >= 0 && m < strlen(a));
copy(b, a, m);
printf("%s", b);
return 0;
}
#include<stdio.h>
/*
* 将字符串中的第m个字符开始的全部字符复制到另一个字符串中。
要求在主函数中输入字符串及m的值,
并输出复制结果,在被调函数中完成复制。
*/
char* fun(char str[],int m)
{
int i = m-1;
char res[1024] = {0};
int resi = 0;
while (str[i] != '\0') {
res[resi] = str[i];
i++;
resi++;
}
return res;
}
int main()
{
char str[1024];
int m;
scanf("%d%s",&m,&str);
char* c = fun(str,m);
printf("%s\n", c);
return 0;
}