Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Ejercicios => Mensaje iniciado por: SiesteR en 2 Julio 2004, 11:01 AM

Título: [MOD] 100 ¿Que me falla en el codigo?
Publicado por: SiesteR en 2 Julio 2004, 11:01 AM
Hola!

estoy todo picado haciendo el primer ejercicio de C :D, y veo que se me han olvidado muchisimas cosas. Esto de no tocar un lenguaje desde hace casi un año pasa factura :(.

BUeno este es mi codigo:
#include <stdio.h>
#include <string.h>

int main (void) {
        long int tc,tf;
        char tipo [1];

        printf("Introduce el tipo de medicion(F/C): ");
        scanf("%s",&tipo);
        if (!strcmp(tipo,"C")) {
                printf ("Introduce los grados C: ");
                scanf("%d",&tc);
                tf=(5/9)*(tc-32);
                printf("%d grados C == %d grados F.\n", &tc,&tf);
                }
        else
                if (!strcmp(tipo,"F")) {
                        printf("Introduce los grados F: ");
                        scanf("%d",&tf);
                        tc=((9/5)*tf)+32;
                        printf("%d grados F == %d grados C.\n",&tf,&tc);
                        }
                else
                        printf("Error de uso.\n");

        return 0;
}


y esto lo que sale por pantalla al ejecutarlo:
:~$ ./ejC1
Introduce el tipo de medicion(F/C): F
Introduce los grados F: 40
-1073742960 grados F == -1073742956 grados C.
:~$ ./ejC1
Introduce el tipo de medicion(F/C): C
Introduce los grados C: 35
-1073742956 grados C == -1073742960 grados F.
:~$




La pregunta es:
¿por que salen esos numeros tan grandes en vez de los que yo introduzco?

Graciasss :)

PD: que buena idea esta de los ejercicios, resulta muy motivante, de verdad gracias!!!
Título: Re: Ejs. C nº 1. Que me falla en el codigo?
Publicado por: Cobac en 2 Julio 2004, 18:52 PM
printf("%d grados C == %d grados F.\n", &tc,&tf);

es

printf("%d grados C == %d grados F.\n", tc,tf);

y

printf("%d grados F == %d grados C.\n",&tf,&tc);

es

printf("%d grados F == %d grados C.\n",tf,tc);

salu2

P.D.:Si si, esto de los ejercicios esta bien, asi voy recordando algo de C :P
Título: Re: Ejs. C nº 1. Que me falla en el codigo?
Publicado por: SiesteR en 2 Julio 2004, 20:26 PM
Graaaciaaaaas!!!! Ya ni me acordaba de como se usa el printf, joder vaya tela  :'( jajjajaa
Título: Re: Ejs. C nº 1. Que me falla en el codigo?
Publicado por: soplo en 2 Julio 2004, 22:20 PM
Claro, estabas imprimiendo la dirección en vez de el valor que esta contiene

:D
P.D.

Por cierto, este no es el ejercicio nº 1. Es el ejercicio nº 100.