C语言输入一串字符串从第n个字符开始截取m个字符组成一个新的字符串输出。

如题所述

#include <stdio.h>

#include <string.h>

int main()

{char s[300];

 int n,m;

 printf("Please enter a string:\n");

 gets(s);

 printf("n m =?");

 scanf("%d%d",&n,&m);

 if(n>strlen(s)||m<1)

   return 0;

 s[n+m-1]='\0';

 printf("%s\n",s+n-1);

return 0;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-06-14

1、我们编辑如图中输入的代码。

2、进入源文件的目录下,在终端输入命令gcc -o t test.cpp。

3、输入./t命令,运行生成的可执行文件。

4、运行结果为baidu。

5、strncpy 的函数原型char *strncpy(char *dest,char *src,size_t n),我们在复制src的前n个字符到dst中。

6、如果超过src的字符串长度,自动复制完全部的字符串 。

第2个回答  2016-11-24
用if语句里面嵌套一个for语句就行了
相似回答