Programación General > C/C++
Borrar espacioes en blanoc de una cadena de caracteres
(1/1)
kikocrak:
Buenas chicos:
Tengo que hacer un programa que elimine los espacios en blanco de una cadena de caracteres, no se donde esta el fallo, no puedo utiolizar funciones.
/* Programa que elimina de una cadena de caracteres espacios en blanco */
#include<stdio.h>
#define N 40
main(){
char cad_esp[N];
char cad_sinesp[N];
int i,je;
printf("Introduzca la cadena a eliminar los espacios:");
scanf("%s",cad_esp);
for(i=j=0;cad_esp!='';i++)
cad_sinesp[j]=cad_esp;
if(cad_esp==' '){
cad_sinesp[j]=cad_esp[i+1];
j++;
}
cad_sinesp[j]='';
printf("La cadena sin espacios es: %sn",cad_sinesp);
}
Os agradeceria vuestra colaboracion, muchas gracias.
locazopro:
mira, no lo he probado, pero debería funcionar.
--- Código: C --- #include <stdio.h> int main(){ int i,j=0; char con_esp[40],sin_esp[40]; printf("Ingrese la cadena:"); scanf("%*c%[^n]",con_esp); for(i=0;i<40;i++){ if(con_esp[i] != ' '){ sin_esp[j] = con_esp[i]; j++; } } printf("La cadena con espacios es %sn",con_esp);printf("La cadena sin espacios es %sn",sin_esp); return -1;}
tienes que tener cuidado al pedir los datos al usuario, comprobar el total de carácteres y esas cosas aburridas. Me dices si funciona .
saludos!
kikocrak:
Lo primero, muchas gracias, el programa funciona correctamente, lo unico que se come la primera letra, he modificado mi programa siguiendo tus directrices, pero me sigue sin funcionar, te lo muestro:
#include<stdio.h>
#define N 40
main(){
char cad_esp[N];
char cad_sinesp[N];
int i=0,j=0;
printf("Introduzca la cadena a eliminar los espacios:");
scanf("%s",cad_esp);
for(i=j=0;cad_esp!='';i++){
if(cad_esp!=' '){
cad_sinesp[j]=cad_esp;
j++;
}
}
printf("%sn",cad_esp);
}
NO se donde estara el fallo. Muchas gracias de verdad.
locazopro:
haber, el problema no es la lógica de tu programa, es que la función scanf con su parámetro %s no permite capturar espacios en blanco, por lo que ni siquiera estas utilizando la frase que realmente quieres quitarle los espacios. Mira, para mas información ve alguna referencia de C, o algo asi, hay un libro excelente que sirve de referencia que The standard C Library de P.J Plauger.
Saludos!
Navegación
Ir a la versión completa