elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  concatenacion de cadenas sin usar funciones
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: concatenacion de cadenas sin usar funciones  (Leído 1,842 veces)
fernaEDLP

Desconectado Desconectado

Mensajes: 48


Ver Perfil
concatenacion de cadenas sin usar funciones
« en: 2 Mayo 2019, 06:30 am »

hola gente como les va?, necesito ayuda con el siguiente problema:
tengo que ingresar dos cadenas por teclado y copiar el contenido de la segunda al final de la primera es decir si en cad1 ingreso "hola", y en cad2 ingreso "mundo", al final debe quedarme en cad1 hola mundo, el código ya casi lo tengo hecho, pero hay algo que me falta o sea cuando termino de copiar los contenidos e imprimo cad1 me sale todo junto, o sea holamundo, y yo no quiero que salga así:
i
Código
  1. nt main()
  2. {
  3.  char cad1[80],cad2[80];
  4.  int i=0,j=0,k=0;
  5.  printf("ingrese cad1\n");
  6.  gets(cad1);
  7.  fflush(stdin);
  8.  printf("ingrese cad2 \n");
  9.  gets(cad2);
  10.  while(cad1[i]!='\0')
  11.  {
  12.      i++;
  13.  
  14.  }
  15.  while(cad2[j]!='\0')
  16.  {
  17.      cad1[i+k]=cad2[j];
  18.      j++;
  19.      k++;
  20.  }
  21.  cad1[i+k]='\0';
  22.  
  23. puts(cad1);
  24. return 0;
}
se me había ocurrido, colocar en el mensaje printf("ingrese cad2 pero antes coloque un espacio"), pero no c quedaría muy croto pidiéndolo, graciass de antemano


En línea

animanegra

Desconectado Desconectado

Mensajes: 287



Ver Perfil
Re: concatenacion de cadenas sin usar funciones
« Respuesta #1 en: 2 Mayo 2019, 09:31 am »

Si quieres que aparezca un espacio tienes que ponerlo tu, el ordenador no hace magia. Solo hace las acciones para las que las has programado.

A ver, en el primer while estas paseandote por la primera cadena buscando el final, y el en segundo estás paseandote por la segunda cadena pasando el contenido de cada caracter a partir de la posicion i donde te habías quedado. ¿Correcto?

¿Y si en lugar de empezar a pasar caracteres nada más que terminas de saber donde está el final de la primera string le añades un espacio?

Código:
cad1[i]=' '; // Añadimos el caracter espacio en el lugar donde encontraste el caracter '\0'
i++;          // Añadimos 1 al contador de posicion para no machacar el espacio que acabamos de poner.


En línea


42
No contesto mensajes por privado, si tienes alguna pregunta, consulta o petición plantéala en el foro para que se aproveche toda la comunidad.
fernaEDLP

Desconectado Desconectado

Mensajes: 48


Ver Perfil
Re: concatenacion de cadenas sin usar funciones
« Respuesta #2 en: 2 Mayo 2019, 13:21 pm »

ahi salio!, graciass!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
CONCATENACION DE CADENAS EN PERL <<URGENTE>>
Scripting
<<The Joker>> 1 8,300 Último mensaje 22 Julio 2006, 14:16 pm
por Firos
Comparar cadenas sin usar strcmp « 1 2 »
Programación C/C++
Rockmore 12 21,400 Último mensaje 25 Octubre 2010, 07:01 am
por do-while
Usar Putmem1 con cadenas? « 1 2 »
Programación Visual Basic
x64core 12 5,759 Último mensaje 18 Septiembre 2011, 02:47 am
por x64core
cadenas y funciones
Programación C/C++
ALONSOQ 4 2,081 Último mensaje 7 Agosto 2012, 15:05 pm
por X3R4CK3R
[C] Comparar 2 cadenas sin usar <string.h> « 1 2 »
Programación C/C++
Ataulfo7 16 11,172 Último mensaje 9 Abril 2015, 19:22 pm
por Miseryk
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines