Danny787
Ensign
- Registriert
- Jan. 2007
- Beiträge
- 180
ich hab heut versucht ein programm zu programmieren, im prinzip funktionierts, aber noch nicht so wie ich will. hier erstmal der quellcode:
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int number;
printf("\n bitte zahl eingeben: ");
scanf("%d" , &number);
if (number > 0){
printf("\n Eingegebene Zahl ist positiv, Zahl: %d", number);
return 0;
}
if (number ==0){
printf("\n Sie haben die Zahl 0 eingegeben, Zahl: %d", number);
}else{
printf("Eigegebene Zahl ist kleiner 0, Zahl: %d",number);
}
return 0;
}
Der Sinn meines Programms ist, das der User eine beliebige zahl in die console eingibt (int)
und das programm dann unterscheidet zwischen positiver zahl, negativer zahl und null.
beispiel: man gibt 5 in die console ein, dann sagt das programm, die zahl ist positiv, und gibt ne 5 aus. bei der eingabe von 0 sagt das programm, die zahl ist 0 und bei -3 oder so die zahl ist negativ.
mein problem ist nun, dass am anfang der satz "bitte geben sie eine zahl ein" nicht angezeigt wird, jedoch kann man trotzdem eine zahl eingeben und das programm sagt dann auch ob positiv, negativ oder 0.
mein zweites problem ist, das man nur einmal eine zahl in die konsole eingeben kann, danach gehts nicht mehr.
weiß jemand vielleicht rat?
danke schonmal im voraus.
@pjprueller
danke mit dem befehl fflush stdout funktionierts, hat er mir den satz in der konsole angegeben. jetzt hab ich nur noch das problem, dass wenn ich eine zahl eingebe und das programm mit sagt ob die zahl positiv,negativ usw ist, kann ich danach keine weitere zahl eingeben. ich will zb was eingeben, dann programm durchlaufen lassen und danach noch eine weitere zahl eingeben können usw.
hat jemand ne idee?
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int number;
printf("\n bitte zahl eingeben: ");
scanf("%d" , &number);
if (number > 0){
printf("\n Eingegebene Zahl ist positiv, Zahl: %d", number);
return 0;
}
if (number ==0){
printf("\n Sie haben die Zahl 0 eingegeben, Zahl: %d", number);
}else{
printf("Eigegebene Zahl ist kleiner 0, Zahl: %d",number);
}
return 0;
}
Der Sinn meines Programms ist, das der User eine beliebige zahl in die console eingibt (int)
und das programm dann unterscheidet zwischen positiver zahl, negativer zahl und null.
beispiel: man gibt 5 in die console ein, dann sagt das programm, die zahl ist positiv, und gibt ne 5 aus. bei der eingabe von 0 sagt das programm, die zahl ist 0 und bei -3 oder so die zahl ist negativ.
mein problem ist nun, dass am anfang der satz "bitte geben sie eine zahl ein" nicht angezeigt wird, jedoch kann man trotzdem eine zahl eingeben und das programm sagt dann auch ob positiv, negativ oder 0.
mein zweites problem ist, das man nur einmal eine zahl in die konsole eingeben kann, danach gehts nicht mehr.
weiß jemand vielleicht rat?
danke schonmal im voraus.
@pjprueller
danke mit dem befehl fflush stdout funktionierts, hat er mir den satz in der konsole angegeben. jetzt hab ich nur noch das problem, dass wenn ich eine zahl eingebe und das programm mit sagt ob die zahl positiv,negativ usw ist, kann ich danach keine weitere zahl eingeben. ich will zb was eingeben, dann programm durchlaufen lassen und danach noch eine weitere zahl eingeben können usw.
hat jemand ne idee?
Zuletzt bearbeitet: