请问大佬这个C语言程序代码该如何编写?

内容如图所示,麻烦大佬帮我编写一下代码,谢谢!

第1个回答  2019-12-18
C语言程序代码已经完成:
#include<stdio.h>
char *substrcpy(char *str,int m)
{char *p;
for(p=str;*p&&--m;p++);
if(m)return NULL;
else return p;
}
int main()
{ char s[]="Good afternoon!";
puts(substrcpy(s,5));
return 0;
}追问

不是要求字符长度吗?

*p&&--m麻烦解释下这个什么意思

代码运行有误

追答

运行有误吗?

追问

有误

我是将字符串交给人输入的

不固定

本回答被提问者和网友采纳
第2个回答  2019-12-18
允许用标准库吗,可以的话就很简单啊,用strlen
#include<stdio.h>
char *substrcpy(char *str, int m)
{
if (m > strlen(str)) return NULL;
else return str + m;
}
第3个回答  2019-12-18
#include<stdio.h>
char *substrcpy(char *str,int m) { int n;
n=0; while ( str[n] ) n++;
if ( n>m ) return str+m; else return NULL;
}
void main() { char s[256],*p; int m;
scanf("%s%d",s,&m); p=substrcpy(s,m); if ( p ) printf("%s\n",p);
}
相似回答