| Ver tema anterior :: Ver siguiente tema |
| Autor |
Mensaje |
javi_606 Forero


Registrado: 17 Jul 2007
Mensajes: 198
|
Publicado: Mar Abr 29, 2008 11:05 am Título del mensaje: Problema con cadenas. En lenguaje C |
|
|
Quiero hacer un ejercicio que te diga si cuando metes una palabra, sea igual al revés escrita, es decir, como los números capicua pero con letras.
(palindromos)
Tengo la función que te lo comprueba que es así:
Código:
| Código: |
const ELEMENTOS 10
char *p, char *cp;
char pal[ELEMENTOS];
int i;
cp = &pal[ELEMENTOS];
p = pal;
for (i = 0; i<ELEMENTOS; i++){
pal2[i] = *cp;
pal2[ELEMENTOS] = *p;
ELEMENTOS--;
p++;
cp--;
}
printf ("la palabra al reves seria: %s", pal2); // aqui es donde está el error, ya que no se muestra nada...Y no sé el por qué no se introduce en esa posicion los contenidos de los punteros en ese momento.
} |
Espero vuestra ayuda. Gracias.[/code] |
|
| Volver arriba |
|
 |
Klatous Nuevo Miembro

Registrado: 22 May 2008
Mensajes: 2
|
Publicado: Jue May 22, 2008 2:08 pm Título del mensaje: |
|
|
Buenas, revisa lo siguiente
cp = &pal[ELEMENTOS-1]; en lugar de cp = &pal[ELEMENTOS];
El bucle no se exactamente que quieres hacer con
pal2[i] = *cp;
pal2[ELEMENTOS] = *p;
Lo que haces con pal2[i] lo modificarías con pal2[ELEMENTOS] si estuviese bien. Y de todas formas sería pal2[ELEMNTOS-1].
ELEMENTOS lo has declarado como CONST no puedes modificar su valor.
Piensa bien lo que quieres hacer en el bucle.
Un saludo |
|
| Volver arriba |
|
 |
DARKDMR Yo soy el foro


Registrado: 13 Sep 2006
Mensajes: 3905
Ubicación: Venezuela/Zulia/Maracaibo
|
|
| Volver arriba |
|
 |
politiogt Nuevo Miembro

Registrado: 29 Ago 2007
Mensajes: 7
|
Publicado: Mie Jun 11, 2008 7:27 pm Título del mensaje: |
|
|
te comento un par de cosas, que no se exactamente si te funcionaran. en primer lugar cuando dices que no te muestra nada prueba poner, despues de printf : getchar();, asi cuando sales del programa te mostrara la cadena escrita y esperara a que pulses una tecla antes de terminar el programa.
en segundo lugar, pal2 no lo veo declarado como caracter en ningun sitio, no se si el codigo es mas largo y no lo has incluido aki. si no lo has declarado en ningun sitio lo haces y prueba a ver que pasa.
espero que te sea de ayuda!!!
saludos!! |
|
| Volver arriba |
|
 |
|
|
|