C语言笔试题之交替合并字符串

实例要求:

  • 1、给定两个字符串 word1 和 word2
  • 2、请从 word1 开始,通过交替添加字母来合并字符串;
  • 3、如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾;
  • 4、返回合并后的字符串new_word

案例展示:

在这里插入图片描述

实例分析:

  • 1、求出两个字符串的长度('\0'不计),可以使用strlen函数求解;
  • 2、用while循环遍历两个字符串;
  • 3、交替插入新定义的字符串即可;

示例代码:

	char * mergeAlternately(char * word1, char * word2){
	    int len1 = strlen(word1);
	    int len2 = strlen(word2);
	
	    char *new_word = (char *)malloc(sizeof(char)*(1+len1+len2));
	    int i = 0;
	    int j = 0;
	    while(i < len1 || i < len2)
	    {
	        i < len1 ? new_word[j++] = word1[i]:0;
	        i < len2 ? new_word[j++] = word2[i]:0;
	        i++;
	
	    }
	    new_word[j] = '\0';
	    return new_word;
	
	}

运行结果:

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值