Wie funktioniert dieser Code eigentlich? [geschlossen]

int main()
 {
  float a=4;
  int b=2;
  printf("%d\n",(a/b));
  printf("%f",(a/b));
  return 0;
 }

Die erste printf-Anweisung gibt immer wieder unterschiedliche Werte aus. Ich weiß, dass ich den% d-Bezeichner für eine Gleitkommazahl verwende. Aber ich kenne die tatsächliche Arbeitsweise nicht. Auch wenn ich die erste Zeile ändere:

int a=4;

dann wird die zweite Anweisung gedruckt

0.000000

Immer wieder. Warum gibt der erste printf im ersten Code unterschiedliche Werte aus, aber in der zweiten Anweisung des zweiten Codes wird derselbe Wert ausgegeben? Kann mir jemand erklären?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage