Foros del Web » Programación para mayores de 30 ;) » C/C++ »

invertir una cadena de caracteres en C

Estas en el tema de invertir una cadena de caracteres en C en el foro de C/C++ en Foros del Web. hola, este es mi codigo que dado una cadena de caracateres en C ejemplo: hola deberia imprimir aloh, y lo que pasa es que si ...
  #1 (permalink)  
Antiguo 01/05/2015, 13:46
 
Fecha de Ingreso: febrero-2015
Mensajes: 20
Antigüedad: 9 años, 2 meses
Puntos: 0
invertir una cadena de caracteres en C

hola, este es mi codigo que dado una cadena de caracateres en C ejemplo: hola deberia imprimir aloh, y lo que pasa es que si coloco el imprimir fuera de los for imprime es hhhh y si lo coloco en el primer for me imprime es aaaalllloooohhh

podrian ayudarme por favor con mi codigo

Código HTML:
#include <stdio.h> 
#include <string.h>

char cad [20];
char auxiliar [20];

int main () {
	int i,j;
	int largo;
	scanf("%s", cad); 
	
	largo = strlen(cad) ;
	
	for (i=largo; i>=0;i--){
		for (j=0; j<largo ;j++) {
			
			auxiliar [j]= cad[i] ;
		}
		printf ( "%s" , auxiliar );
	}
	//printf ( "%s" , auxiliar );
	
	return 0;
}
  #2 (permalink)  
Antiguo 01/05/2015, 14:05
Avatar de xKuZz  
Fecha de Ingreso: febrero-2015
Ubicación: nullptr
Mensajes: 183
Antigüedad: 9 años, 1 mes
Puntos: 27
Respuesta: invertir una cadena de caracteres en C

Claro porque cada vez que tu haces una iteración de la i rellanas con la j todo auxiliar de tal manera que
1) Se rellana auxiliar de a
2) Se rellena auxiliar de l
3) Se rellena auxiliar de o
4) Se rellena auxiliar de h

Sólo tienes que hacer un for y tener en cuenta cuanto vale largo e intenta utilizar las etiquetas HIGHLIGHT de C para este tipo de código.
Saludos
Código C:
Ver original
  1. for (i=0; i<largo; i++){
  2.         auxiliar[i]= cad [largo-i];
  3.         }
  #3 (permalink)  
Antiguo 01/05/2015, 18:32
 
Fecha de Ingreso: febrero-2015
Mensajes: 20
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: invertir una cadena de caracteres en C

Gracias xKuZz , ahora si me da, te lo agradezco.

Etiquetas: cadena, cadenas, caracteres, invertir
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:06.