字符串重组,

用c语言写一个函数,使得两个字符串按照规则重新组合成一个新的字符串。
供参考:
#include <stdio.h>
#define LENA 128
#define LENB 16
void recombination(char str1[], char str2[]);
int main()
{
char str1[LENA], str2[LENB];
scanf("%s%s", str1, str2);
recombination(str1, str2);
printf("%s\n", str1);
return 0;
}
void recombination(char str1[], char str2[])
{
int i, j, k, t;
char str[LENA] = { 0 };
for (i = 0, j = 0, k = 0; str1[i];) {
if (str2[j]) {
t = str2[j] - '0';
while (t--)
str[k++] = str1[i++];
str[k++] = str2[j++];
}
else
str[k++] = str1[i++];
}
for (i = 0; i < k; i++)
str1[i] = str[i];
str1[i] = '\0';
}