• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

C - for-Schleife

Status
Für weitere Antworten geschlossen.

daryY

Neues Mitglied
Hey!

Ich habe ein Problem und zwar lerne ich C an meiner Schule.
Soweit so gut. Nun ist unsere "Hausaufgabe" eine Aufgabe mit for-Schleifen zu machen, was uns allerdings noch nicht erklärt wurde.

NA ja, die Aufgabe lautet:
"Erzeugen Sie ein "Einmaleins" mit folgender Bildschirmausgabe:

Bitte Multiplikator eingeben: 7
Bitte Anzahl der Ergebnisse eingeben: 9

7 14 21 28 35 42 49 56 63

Ich krieg des einfach nicht hin :( Vllt kann mir ja jemand helfen. Hab mich mal an dem Quelltext versucht, sieht flgendermaßen aus:

Code:
#include <conio.h>
#include <stdio.h>

main()
{
   int i=0, abbruch=0, multiplikator=0, erg=0;

   printf("Bitte Multiplikator eingeben: ");
   scanf("%i", &multiplikator);

   printf("Bitte Anzahl der Ergebnisse eingeben: ");
   scanf("%i", &abbruch);

   for (multiplikator; multiplikator<=abbruch; multiplikator+multiplikator)
   {
      erg=multiplikator*1;
      printf("%i", erg);
   }
   {
      erg=multiplikator*2;
      printf("%i", erg);
   }
   getch();
}

Liebe Grüße, DaryY :???:
 
Werbung:
1. "multiplikator+multiplikator" soll innerhalb jeder Schleife ausgeführt werden. Das ist aber keine gültige Anweisung. Hier liegt der eine Fehler.
2. Alle Anweisungen, die während der for-Schleife ausgeführt werden sollen, werden in einen Block mit Klammern eingebaut. Einen solchen Hast Du direkt nach dem for. Der nächste Klammernblock liegt nicht mehr innerhalb Deiner for-Schlefe. Die Klammern sind hier überflüssig, das was darin steht, wird genau einmal auseführt, nachdem die for-Schleife fertig ist.

Dann sind da noch ein paar logische Fehler drin, die aber abhängig davon sind, wie Du Fehler 1 (s.o.) löst.
 
Code:
#include <conio.h>
#include <stdio.h>

main()
{
   int i=0, abbruch=0, multiplikator=0, erg=0;

   printf("Bitte Multiplikator eingeben: ");
   scanf("%i", &multiplikator);

   printf("Bitte Anzahl der Ergebnisse eingeben: ");
   scanf("%i", &abbruch);

   for (i=1; i<=abbruch; i++)
   {
      erg=multiplikator*i;
      printf("%i ", erg);
   }
   getch();
}

Ich würde es so machen.

Gruß thuemmy
 
Werbung:
Man lernt doch auch nach 12 Jahren C-Programmierung nie aus.
Was soll multiplikator+multiplikator denn bewirken? Aber recht hast Du, der Compiler lässt "foo+foo;" zu.
 
Werbung:
Status
Für weitere Antworten geschlossen.
Zurück
Oben