作业帮 > 综合 > 作业

fun(char*a,char *b,char *c){while(*a&&*b){*c=*a; c++; a++;*c

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/23 00:06:47
fun(char
*a,char *b,char *c)
{
while(*a&&*b)
{
*c=*a; c++; a++;
*c=*b; c++; b++;
}
if(*a=='\0')
while(*b)
{*c=*b; c++; b++;}
else
while(*a)
{*c=*a; c++;
a++;}
*c='\0';
}
这个程序是将字符串a和字符串b交叉存入字符串c中.如a="abc",b="12345";则c="a1b2c345"
再问: 恩,谢谢,可以帮我在后面写注释吗?有的地方我还是看不懂呀
再答: fun(char *a,char *b,char *c) { while(*a&&*b) //循环直到a或b字符串结束,就是‘\0’ { //交叉将字符串a和字符串b交叉存入字符串c中 *c=*a; c++; a++; *c=*b; c++; b++; } if(*a=='\0') //如果*a=='\0' 则说明b还有字符未存入c中。就是字符串b比a要长 while(*b) //循环知道b结束 { //将b未加入字符加入到c *c=*b; c++; b++; } else //反之 就是字符串a比b要长 while(*a) //循环知道a结束 { //将b未加入字符加入到c *c=*a; c++; a++; } *c='\0';//给c字符串加结束符 }