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

带主函数和自定义函数。... 带主函数和自定义函数。 展开
 我来答
刺友互
高粉答主

2019-06-14 · 每个回答都超有意思的
知道答主
回答量:3979
采纳率:100%
帮助的人:69.8万
展开全部

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的字符串长度,自动复制完全部的字符串 。

听不清啊
高粉答主

2016-11-24 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部

#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;

}

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
逐梦兮乐
推荐于2017-11-25 · TA获得超过6431个赞
知道大有可为答主
回答量:5151
采纳率:72%
帮助的人:1849万
展开全部
#include<stdio.h>
char fun(char a[])
{
int k,l,i,j;
char b[80];
printf("你想截取的字符串从第几个开始?\n");
scanf("%d",&k);
printf("你想在第几个结束呢?\n");
scanf("%d",&l);
for(i=k-1,j=0;i<l;j++,i++)
{
b[j]=a[i];
}
b[j]='\0';
printf("截取结果是:");
puts(b);
}
int main()
{
char a[80];
printf("输入字符串:");
gets(a);
fun(a);
}
祝你愉快!
追问
我试了一下,在puts(b);那里说错误, error C4716: 'fun' : must return a value。
追答
你在puts(b);后面加个return 0;应该就可以了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
操羽40
2013-06-18 · TA获得超过430个赞
知道小有建树答主
回答量:374
采纳率:100%
帮助的人:236万
展开全部
#include<stdio.h>
#include<string.h>
#include<ctype.h>
void print(char s[],int n,int m)
{
    int k;
    int i;
    char *p;
    k=strlen(s);
    p = s;
    for(i=n-1;i<n-1+m;i++)//从第n-1位置开始,截取m个字符
        putchar(*(p+i));
    printf("\n");

}
void main()
{
    char *s,str[20];
    int m,n;
    printf("please input a string:\n");
    s = str;
    gets(s);
    printf("the string is:");
    puts(s);
    printf("please input n and m\n");
    scanf("%d%d",&n,&m);
    print(s,n,m);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式