c语言编程,利用函数把字符数组b,连接到字符数组a的后面,并返回字符数组a中新的长度。
答案:2 悬赏:10 手机版
解决时间 2021-02-16 06:06
- 提问者网友:世勋超人
- 2021-02-15 13:27
c语言编程,利用函数把字符数组b,连接到字符数组a的后面,并返回字符数组a中新的长度。
最佳答案
- 五星知识达人网友:鸽屿
- 2021-02-15 14:51
题目要连接是“字符数组”而非“字符串”。如下代码可以实现:
//#include "stdafx.h"//If the vc++6.0, with this line.
#include "stdio.h"
int Connect_a_b(char *a,int la,const char *b,int lb){
a+=la,la+=lb;
while(*a++=*b++,lb--);
return la;
}
int main(void){
char s1[50]="Moonlight is in fr",*s2="ont of my bed.";
int i,ln=Connect_a_b(s1,18,s2,14);
for(i=0;i printf("
New length is %d
",ln);
return 0;
}
//#include "stdafx.h"//If the vc++6.0, with this line.
#include "stdio.h"
int Connect_a_b(char *a,int la,const char *b,int lb){
a+=la,la+=lb;
while(*a++=*b++,lb--);
return la;
}
int main(void){
char s1[50]="Moonlight is in fr",*s2="ont of my bed.";
int i,ln=Connect_a_b(s1,18,s2,14);
for(i=0;i
New length is %d
",ln);
return 0;
}
全部回答
- 1楼网友:你哪知我潦倒为你
- 2021-02-15 16:19
# include
int main(void)
{
char a[80],b[80];
int i,j;
gets(a);
gets(b);
for(i=0;a[i];i++);
for(j=0;b[j];j++,i++) a[i]=b[j];
a[i]='';
puts(a);
}
非要用 指针变量的写法# include
int main(void)
{
char a[80],b[80];
int i;
char *p=a,*q=b;
gets(a);
gets(b);
for(i=0;a[i];i++)
p++;
for(;*q;p++,q++) *p=*q;
*p='';
puts(a);
}追问请问for(i=0;a[i];i++); for(j=0;b[j];j++,i++) a[i]=b[j];这两句是什么意思啊追答第一个for确定a数组的长度第二个for拼接
int main(void)
{
char a[80],b[80];
int i,j;
gets(a);
gets(b);
for(i=0;a[i];i++);
for(j=0;b[j];j++,i++) a[i]=b[j];
a[i]='';
puts(a);
}
非要用 指针变量的写法# include
int main(void)
{
char a[80],b[80];
int i;
char *p=a,*q=b;
gets(a);
gets(b);
for(i=0;a[i];i++)
p++;
for(;*q;p++,q++) *p=*q;
*p='';
puts(a);
}追问请问for(i=0;a[i];i++); for(j=0;b[j];j++,i++) a[i]=b[j];这两句是什么意思啊追答第一个for确定a数组的长度第二个for拼接
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯