题目:请编写函数fun,函数的功能是:将放在字符串数组中的M个字符串(没串的长度不超过N),按照顺序合并成一个新的字符串。
代码:
#include<stdio.h>
#include<string.h>
#define M 3
#define N 20
void fun(char a[M][N],char *b)
{
int i,j;
int k=0;
//将a[M][N]的元素依次赋值给数组b
for(i=0;i<M;i++)
for(j=0;a[i][j]!='\0';j++)
b[k++]=a[i][j];//使用指针表示*(*(a+i)+j)
b[k]='\0';
}
int main()
{
//我们可以用一维数组表示字符串
//而使用二维数组表示字符串数组
//w为用二维数组表示的字符串数组
char w[M][N]={"AAAAA","BBB","CC"},a[100];
int i;
printf("The string:\n");
for(i=0;i<M;i++)
puts(w[i]);
printf("\n");
fun(w,a);
printf("The A string:\n");
printf("%s",a);
}
运行结果: