Problema con programa en C

Iniciado por santibarquero98, 20 Mayo 2015, 22:15 PM

0 Miembros y 1 Visitante están viendo este tema.

santibarquero98

Buenas. Estoy haciendo un curso de C en PDF en el que el usuario tiene que escribir un número y será convertido a octal y a hexadecimal siempre y cuando ese número sea distinto de 0 y después de pensar y pensar y hacer el programa de distintas formas, he escrito el siguiente código y ya no se que más hacer.


#include <stdio.h>
int main()
{
int num;

printf("Introduce un numero para convertir. \n");
scanf("%d",&num);

if (num!=0) printf("El numero en octal es %o y en hexadecimal es %X.",num,num);
else return 0;

while (num!=0)
{
printf("Introduce otro numero para convertir. \n");
scanf("%d",&num);
printf("El numero en octal es %o y en hexadecimal es %X.",num,num);
}

}


El tema es que funciona pero no aparece el mensaje "Introduce otro número...", sale directamente para escribir, sin informar al usuario.

¿Dónde está el error?

ohmigod

Acabo de ejecutar tu código y si que lo muestra. He puesto un par de saltos de línea para que sea mas legible:

Código (cpp) [Seleccionar]
#include <stdio.h>
int main()
{
int num;

printf("Introduce un numero para convertir. \n");
scanf_s("%d", &num);

if (num != 0) printf("El numero en octal es %o y en hexadecimal es %X.\n",num,num);
        else return 0;

while (num != 0)
{
printf("Introduce otro numero para convertir. \n");
scanf_s("%d", &num);
printf("El numero en octal es %o y en hexadecimal es %X.\n", num, num);
}

}

santibarquero98

Si, es cierto. Era por el compilador de DevC++, que había elegido la opción "Nuevo proyecto" sin especificar si quería programar en C o C++, hoy mismo le he dicho que era en C y si que me ha salido. Muchas gracias.