C Programm mit Return?

3 Antworten

1) Definiere jede Variable, bevor du sie verwendest.

Beispiel:

int ergebnis = 0;
// ...
ergebnis = ergebnis + zahl;

2) Mit jedem Aufruf von rechnen wird die Variable e neu angelegt. Wenn du auf den Wert aus dem vorherigen Aufruf zurückgreifen möchtest, musst du die Variable global (außerhalb der Funktion) anlegen.

// globale Variable e (unsauber, aber zum testen reicht es)
int e; 

int rechnen()
{
  int a;

  printf( // wie im original );
  scanf( // wie im original );
  e = e + a;

  return e;
}

int ausgeben(int c)
{
  printf("%i\n", c);
}

int main()
{
  e = 0;

  while(rechnen() < 20)
    ;
    
  ausgeben(e);
}
Boizzen 
Fragesteller
 12.05.2022, 18:00

Super Danke

0

Ich kann zwar kein C, aber wenn ich mir den Code anschaue, faellt mir auf, dass bei Leine 74 "e = %i\n steht. Wird dann nicht einfach die Eingabe rausgegeben?
Sag mir falls ich falsch liege

Boizzen 
Fragesteller
 12.05.2022, 17:39

ja das soll es ja solange machen bis die zahl größer 20 ist

0
Samuele987  12.05.2022, 17:40
@Boizzen

Aber 2 ist ja nicht ueber 20, dann wird natuerlich auch 2 ausgegeben

0