c语言编程,利用函数把字符数组b,连接到字符数组a的后面,并返回字符数组a中新的长度。

2025-03-04 22:59:16
推荐回答(2个)
回答1:

题目要连接是“字符数组”而非“字符串”。如下代码可以实现:

//#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("\nNew length is %d\n",ln);
    return 0;
}

回答2:

# 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]='\0';
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='\0';
puts(a);
}