Frage zu einem Programm
-
hallo,
habe folgendes programm geschrieben, es läuft auch einwandfrei:
#include <stdio.h>
#include <math.h>void main()
{
float x, y;printf("Geben Sie eine Zahl ein:\t");
scanf("%f", &x);if (x >= 0)
{
y = sqrt(x);printf("\nErgebnis:\t%f\n\n", y);
}}
jedoch sobald ich den datentyp abändere also so:
#include <stdio.h>
#include <math.h>void main()
{
double x, y;printf("Geben Sie eine Zahl ein:\t");
scanf("%g", &x);if (x >= 0)
{
y = sqrt(x);printf("\nErgebnis:\t%g\n\n", y);
}}
wird das programm zwar ohne fehle kompiliert und ausgeführt, doch sobald ich ein en wert in dem programm dann eingebe passiert nichts und das programm wird beendet. was mach ich da falsch?
-
Könnte es am falschen Formatstring von man: scanf liegen?
Edit: In Zukunft bitte den Code sauber formatieren und [cpp]-Tags verwenden. Das hilft den Leuten dir zu helfen
-
ja lag daran.
danke!!