2017-06-03 7 views
-2
#include<stdio.h> 
int main() 
{ 
    int a=9; 
    if (a=5) 
     printf("a is five \t"); 
    else 
     printf("a is not five \t"); 
    printf(" Value of a is %d \n",a); 
    return 0; 
} 

Folgende Programme gibt Ausgang .... a is five Value of a is 5Bitte erläutern Sie die Ausgabe

erklären Sie bitte diese

+2

'a = 5' Tippfehler wie' a == 5' – BLUEPIXY

+0

Um den Kommentar von @BLUEPIXY zu erweitern, prüft Ihre 'if' -Anweisung, ob die Variable a dem Wert 5 zugewiesen ist oder nicht. Die mathematische Aussage "a = 5" wird als wahr bewertet ("a" wurde erfolgreich auf die ganze Zahl "5" gesetzt). – Deathgrip

+0

@Shushrut: Was genau willst du erklärt haben? Das Programm funktioniert genau so, wie es sollte. Wenn Sie das berücksichtigen, worum geht es bei Ihrer Frage? – AnT

Antwort

2
if (a=5) 

seine 5 bis eine Zuordnung macht es auch if Bedingung wahr, so printf("a is five \t"); diese Anweisung wird ausgeführt

+0

bitte erklären, wie – Shushrut

+0

@Shushrut Der Ausdruck 'a = 5' ergibt 5, und alle nicht 0 Wert ist wahr. Häufig wird Code, wie er verwendet wird, als bequeme Methode zum Null-Überprüfen und zum Zuweisen eines Zeigers in einer Zeile verwendet. – George

+0

Sie können diese Bedingung ausführen, wenn ((a = 5) == 5), um besser zu verstehen, was George erklärte – Pras

0
if(a=5) 

ist kein Vergleich, es ist eine Aufgabe. Mit anderen Worten, Sie fragen nicht, ob a fünf ist, Sie setzen a auf fünf.

Verwandte Themen