#include
int longitud( char c[])
{ int i;
for(i=0;c[i]!='\0';i++);
return(i);
}
int longitud_palabra(char c[])
{ int i,con=0, m=0,j,x;
for(i=0;c[i]!='\0';i++)
{ con=0;
while((c[i]!=' ')||(c[i]!='\0 '))
{ con++;
i++;
}
if(con>m)
{ m=con;
x=i-con;
}
printf("posicion de la palabra es %d\n",x);
}
return(x);
}
void reemplazar(char c1[],char c2[],char c3[])
{ int i,x1,x2,j=0;
x1=longitud_palabra(c1);
x2=longitud_palabra(c2);
printf("posicion de la palabra mas larga de c1 es %d",x1);
for(i=0;c2[i]!=0;i++)
{ if(x2==i)
{ while(c1[x1]!=' ')
{j=x2;
c3[j]=c1[x1];
x1++;
j++;
}
}
c3[j]=c2[i];
j++;
}
}
int comparar(char c1[], char c2[])
{ int i;
for(i=0;c1[i]!='\0';i++)
{ if(c1[i]!=c2[i])
return(1);
}
return(0);
}
void concatenar(char c1[], char c2[],char c3[])
{ int i,j;
for(i=0;c1[i]!='\0';i++)
c3[i]=c1[i];
c3[i]=' ';
i++;
for(j=0;c2[j]!='\0';j++)
{ c3[i]=c2[j];
i++;
}
c3[i] ='\0';
}
main()
{ char c1[50],c2[50],c3[100];
int l1,l2,r;
printf("digite cadena 1\n");
gets(c1);
printf("digite cadena 2\n");
gets(c2);
l1=longitud(c1);
l2=longitud(c2);
if(l1==l2)
{ r=comparar(c1,c2);
if( r==0 )
{ concatenar(c1,c2,c3);
printf("la cadena final es %s",c3);
}
else
{ reemplazar(c1,c2,c3);
printf("la cadena final es %s",c3);
}
}
else
{ reemplazar(c1,c2,c3);
printf("la cadena final es %s",c3);}
getch();
}
No hay comentarios:
Publicar un comentario