Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Informatik in der Schule » Schleife in C unterbrechen » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 2 Beiträge
MaBa

Hallo Alogo,

zunächst ein Hinweis vorweg: Initialisiere deine Variablen bevor sie verwendet werden. Hier am besten direkt bei der Deklaration. Denn "sum" wird verwendet, ohne dass bekannt ist welchen Wert die Variable haben soll.

Zu deinem Problem scanf wird nicht nur die Zahl eingelesen, die der Benutzer eingibt, sondern auch das "\n" bei Drücken der Enter-Taste zur Bestätigung der Eingabe. Eine Möglichkeit besteht darin, nach dem scanf durch
code:
1:
fflusch(stdin);

den Puffer zu leeren.

Alternativ kannst du auch prüfen, ob es sich bei dem eingelesenen Zeichen um ein newline handelt. Wenn ja, ignorierst du es - ansonsten ist es die gewünschte Nutzereingabe.


Viele Grüße,
MaBa
Alogo Schleife in C unterbrechen

Ich hoffe, ich bin hier richtig. Ich bin gerade dabei, mir die Programmiersprache C in ihren Grundzügen, mit Hilfe eines ausgeliehenen Buches selber beizubringen.

Das folgende Programm soll den Benutzer fragen, wieviele Gleitkommazahlen er addieren möchte und dann die Addition ausführen. Leider ist es mit dem Programm nciht möglich, eine Zahl einzugeben, sondern die Schleife wird erbarmungslos ausgeführt.

Hier das Stück Code, welches mit Probleme bereitet:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
//kap006/aufgabe3a.c
// Eine vom Benutzer festgelegte Anzahl an Gleitkommazahlen soll addiert werden

#include <stdio.h>

int main( void){
  int number;
  double sum, curr;
  printf("Wieviel Gleitkommazahlen möchten Sie addieren?\n");
  scanf("%d", &number);
  while(number > 0){
    printf("Sie wollen noch  %d Zahlen addieren. Wie lautet die nächste?", number);
    scanf("fl", &curr);
    sum = curr + sum;
    printf("Die aktuelle Zwischensumme lautet %fl \n.", sum);
    number--;
  }
  
  return 0;
}


Alogo