标题:字符插入问题
只看楼主
烟雾中的迷茫
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:621
专家分:1069
注 册:2011-2-9
结帖率:100%
已结贴  问题点数:10 回复次数:2 
字符插入问题
程序代码:
/*字符相间插入程序*/

#include <stdio.h>
#include <string.h>
#define N 20
#define M 20


 void   main()
{
    int a[N],b[M],c[N+M],i,t,k=0;
    printf("please two array:");

    gets(a);
    gets(b);

     for(i=0;i<(t= strlen(a)>strlen(b)? strlen(b): strlen(a));i++)
       {
           c[2*i]=a[i];
           c[2*i+1]=b[i];
       }
     if(strlen(a)>strlen(b))
         {
             for(i=t;i<strlen(a);i++)
                 c[2*t+k++]=a[i];
         }
     else
             for(i=t;i<strlen(b);i++)
                  c[2*t+k++]=b[i];

       printf("%2s\n",c);
}
字符相间插入 运行结果不对
搜索更多相关主题的帖子: please 
2011-05-19 11:40
hjywyj
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:1114
专家分:2611
注 册:2010-4-14
得分:5 
char a[200],b[200],c[400];
int i,j=0,m,n,x;
gets(a);
gets(b);
m=strlen(a);
n=strlen(b);
if(m<n)
{for(i=0;i<m;i++)
{c[j++]=a[i];
c[j++]=b[i];}
for(x=i;x<n;x++)
c[j++]=b[x];
c[j]='\0';
}
else
{for(i=0;i<n;i++)
{c[j++]=a[i];
c[j++]=b[i];}
for(x=i;x<m;x++)
c[j++]=a[x];
c[j]='\0';}
puts(c);

2011-05-19 11:53
lcddhr
Rank: 2
等 级:论坛游民
帖 子:25
专家分:29
注 册:2011-5-18
得分:5 
#include<stdio.h>
#include<string.h>
#define N 20
#define M 20

void main()
 {
    char a[N],b[M],c[N+M];
    int i,j,num_a,num_b;
    int temp;

    printf("Input 2 string:\n");

    gets(a);
    gets(b);

    num_a=strlen(a);
    num_b=strlen(b);

     if(num_a<num_b)         //字符串a的长度比b的长度小的情况
     {
      for(i=0;i<num_a;i++)

       {
         c[2*i]=a[i];
         c[2*i+1]=b[i];

        }

      for(j=2*i;i<num_b;i++,j++)
       c[j]=b[i];

       c[j]='\0';
      printf("%s",c);

     }

    if(num_a>num_b)   //字符串a的长度比b的长度大的情况

     {
      for(i=0;i<num_b;i++)

       {
         c[2*i]=a[i];
         c[2*i+1]=b[i];

        }

      for(j=2*i;i<num_a;i++,j++)
       c[j]=a[i];

       c[j]='\0';
      printf("%s",c);


     }


     
    if(num_a==num_b)   //字符串a的长度比b的长度相等的情况

     {
      for(i=0;i<num_b;i++)

       {
         c[2*i]=a[i];
         c[2*i+1]=b[i];

        }

      c[2*i]='\0';
      printf("%s",c);


     }



   }

[ 本帖最后由 lcddhr 于 2011-5-19 13:11 编辑 ]
2011-05-19 13:08



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-340399-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.153567 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved