Intercambiar elementos de 2 arreglos

De Wiki
Saltar a: navegación, buscar
  • El programa contiene: Estructuras de Repetición en C, Arreglos en C.
  • El problema: Intercambiar los elementos de 2 arreglos de un mismo tamaño
  • Descripción: Programa que explica paso a paso el intercambio de los elementos en los arreglos medainte varias secuencias repetir (FOR).Primero se piden los datos del primer arreglo (A), luego del segundo (B), después se intercambian mediante una variable temporal y finalmente se muestran ambos arreglos
  • Publicado Por: Roberto Muñoz S.
  • Soporte: Comente fallas del código en la discusión de esta página
#include <stdio.h>
#define tam 10 
/*Este define es para el numero de elementos del arreglo (10)*/

/*Simbologia
tam= Esta variable es usada en un "define", significa que en el momento de compilar se reemplazara "tam" 
por 10 en todo el codigo

A[tam]= Primer arreglo llenado por el usuario, posee 10 elementos
B[tam]= Segundo arreglo llenado por el usuario, posee 10 elementos
i= Contador que explora las posiciones del arreglo mediante un for

temp= variable temporal, sirve para almacenar un elemento especifico del arreglo A, antes que sea sobre-escrito
por b en el momento d eintercambiar elementos
*/

int main(){
	int A[tam], B[tam], i, temp;
	//For utilizado para llenar los 10 elementos del arreglo "A"
	for( i=0; i<tam; i++){
		printf("Ingrese los datos enteros del vector A en la posicion %d: ",i);
		scanf("%d", &A[i]); //Usuario ingresa numero entero
	}
	printf("\n");
	//For utilizado para llenar los 10 elementos del arreglo "B"
	for( i=0; i<tam; i++){
		printf("Ingrese los datos enteros del vector B en la posicion %d: ",i);
		scanf("%d", &B[i]); //Usuario ingresa numero entero
	}
	//For utilizado para mostrar los 10 elementos del arreglo "A"
	for( i=0; i<tam; i++){
		printf("Los datos de A son:  %d\n",A[i]);
	}
	printf("\n"); //Un espaciador cosmetico
	
	//For utilizado para mostrar los 10 elementos del arreglo "B"
	for( i=0; i<tam; i++){
		printf("Los datos de B son:  %d\n",B[i]);
	}
	/*Como ambos arreglos poseen la misma cantidad de elementos podemos recorrerlos mediante un for clasico junto a
	un contador de posiciones de arreglo compartido*/
	for( i=0; i<tam; i++){
		temp=A[i]; 
		//El elemento de una posicion especifica (segun el contador) del arreglo A se guarda en una variable temporal
		A[i]=B[i]; 
		//El elemento de una posicion especifica (segun el contador) del arreglo B se sobre-escribe en el arreglo A
		B[i]=temp; //El valor de la posicion especifica guardado en la variable temporal se sobre-escribe en b
	}
	printf("\n\nLuego de intercambiar los valores  \n");
	
	//For utilizado para mostrar el nuevo arreglo de A
	for( i=0; i<tam; i++){
		printf("Los datos de A son:  %d\n",A[i]);
	}
	printf("\n"); //Un espaciador cosmetico
	//For utilizado para mostrar el nuevo arreglo de B
	for( i=0; i<tam; i++){
		printf("Los datos de B son:  %d\n",B[i]);
	}
return 0; //Salida exitosa
}

Herramientas personales
Espacios de nombres

Variantes
Acciones
Navegación
Herramientas
Imprimir/exportar