来地球玩 2021-12-23 14:17 采纳率: 90%
浏览 19
已结题

c++这个问题怎么改

img

int i;
char a[20];
char b[20];
gets(a);
gets(b);
int lena=strlen(a);
int lenb=strlen(b);
int lenc=lena+lenb;
int num=0;
if(lena>=lenb)
{
    strcat(a,b);
    
    for(int i=0;i<lenc-1;i++)
    {
        if(i%2==0)
        {
            num++;
            printf("%c%d",a[i],num);
            
        }
    }
    printf("%c",b[lenb-1]);

}
if(lena<lenb)
{
    strcat(b,a);

    for(int i=0;i<lenc-1;i++)
    {
        if(i%2==0)
        {
            num++;
            printf("%c%d",b[i],num);
        }
    }
    printf("%c",a[lena-1]);
}
 
  • 写回答

1条回答 默认 最新

  • 书山客 2021-12-23 14:31
    关注

    a,b可接受的字符串长度太小,把数组容量变大,比如a[1024],b[1024]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月31日
  • 已采纳回答 12月23日
  • 创建了问题 12月23日