#include #include //Paso por valor int cuadrado_val(int x) { x = x * x; return x; } //Paso por referencia int cuadrado_ref(int *x) { *x = (*x) * (*x); return *x; } int main() { int y, temp; printf("Paso por valor y por referencia\n"); printf("Dame el valor de y: "); scanf("%d", &y); printf("Invocando a la funci\242n cuadrado por valor\n"); printf("El cuadrado de %d es %d\n", y, cuadrado_val(y)); printf("El valor del argumento \"y\" es %d porque NO cambi\242\n", y); printf("\nInvocando a la funci\242n cuadrado por referencia\n"); temp = y; //Se respalda el valor de "y", porque "y" serĂ¡ modificada printf("El cuadrado de %d es %d\n", temp, cuadrado_ref(&y)); printf("Ahora el valor del argumento \"y\" es %d porque SI cambi\242\n", y); system("pause"); return 0; }