c语言程序,就就小拜吧!

编写程序,将字符串中的第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;
}