4个回答
展开全部
#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);
}
祝你愉快!
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;应该就可以了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#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);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询