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

Eliminar espacios de un array

Estas en el tema de Eliminar espacios de un array en el foro de C/C++ en Foros del Web. bueno la cuestión es la siguiente: Necesito hacer un algoritmo que elimine todos los espacios finales en una hilera determinada. Por ejemplo, la hilera "El ...
  #1 (permalink)  
Antiguo 26/01/2009, 11:36
 
Fecha de Ingreso: enero-2009
Mensajes: 2
Antigüedad: 15 años, 3 meses
Puntos: 0
Eliminar espacios de un array

bueno la cuestión es la siguiente:
Necesito hacer un algoritmo que elimine todos los espacios finales en una hilera determinada. Por ejemplo, la hilera "El origen del universo ", debería quedar "El origen del universo".
Les ruego que me ayuden pues este algoritmo es muy util para realizar otros algoritmos.
  #2 (permalink)  
Antiguo 27/01/2009, 12:41
 
Fecha de Ingreso: diciembre-2008
Ubicación: Vigo, Spain
Mensajes: 141
Antigüedad: 15 años, 4 meses
Puntos: 12
Respuesta: Eliminar espacios de un array

Ok creo que esto te servirá si es que no lo has solucionado.

Código:
#include <stdio.h>

int funcion_contar(char cadena[]);

void main()
{
	char cadena[60];
	int i=0,x;      //x= numero de elementos del vector
	
	printf("Introduce cadena: ");
	scanf("%[^\n]s",cadena);     //..hasta que se pulsa enter

	x=funcion_contar(cadena)-1;
	do
	{
		if(cadena[x]==32)
		{
			x=x-1;
		}
	}
	while(cadena[x]==32);

	for(i=0;i<=x;i++)
		printf("%c",cadena[i]);
}
///////////////////
int funcion_contar(char cadena[])
{
	int i=0,nel=0;
	for(i=0;cadena[i]!='\0';i++)
	{
		nel=nel+1;
	}
	return(nel);
}
Para fascilitar puedes usar la funcion de <string.h>, strlen(cadena) para contar los caracteres del vector.

Última edición por Annoying; 27/01/2009 a las 13:17
  #3 (permalink)  
Antiguo 27/01/2009, 13:25
Avatar de MeduZaPaT  
Fecha de Ingreso: enero-2009
Ubicación: USA
Mensajes: 106
Antigüedad: 15 años, 3 meses
Puntos: 3
Respuesta: Eliminar espacios de un array

en que lo queres en C o en C++?
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 10:10.