Comment utiliser la fonction si dans la programmation de c

Le mot-clé dans le cas du langage de programmation C est utilisé pour prendre des décisions dans votre code fondées sur des comparaisons simples. Ce sont les mêmes humains concept utiliser dans la prise de décisions fondée sur la question “ si ”?;

Sommaire

Voici le format de base:

if (évaluation) {sTAT-}

La évaluation une comparaison est une opération mathématique, le résultat d'une fonction ou d'une autre condition. Si la condition est vraie, le déclarations (ou déclaration) Entre accolades sont executed- contraire, ils sont ignorés.

  • L'évaluation de l'instruction if ne doit pas être mathématique. Il peut être simplement une fonction qui retourne une à valeur vrai ou faux, par exemple:

    si (prêt ())

    Cette déclaration évalue le rendement de la fonction prêt (). Si la fonction renvoie une valeur true, les états appartenant à se sont exécutés.

  • Toute valeur non nulle est considéré comme vrai dans C Zéro est considérée comme fausse. Donc, cette déclaration est toujours vrai:

    si (1)

    Et cette déclaration est toujours fausse:

    si (0)
  • Vous savez si une fonction retourne une valeur vraie ou fausse par la lecture de la documentation de la fonction, ou vous pouvez définir une valeur de retour true ou false lors de l'écriture de vos propres fonctions.

  • Vous ne pouvez pas comparer les chaînes en utilisant un si comparaison. Au lieu de cela, vous utilisez les fonctions spécifiques de comparaison de chaînes.

  • Quand une seule déclaration appartient à une si comparaison, les accolades sont optionnelles.

Exercice 1: Réécrire le code d'une comparaison simple, enlever les accolades avant et après la ligne 12. Construire et exécuter pour assurer qu'il fonctionne toujours.




Une simple comparaison

#include int main () {int a, ba = 6-b = a - 2-si (a> b) {printf ("% d est supérieur% d n", a, b) -} return (0 ) -}

Comment comparer les valeurs de différentes façons

Le langage C emploie un petit peloton des opérateurs de comparaison mathématique.

OpérateurExempleVrai Lorsque
!=a! = best un pas égal à b
lt;un lt; ba est inférieur à b
lt; =un lt; = Ba est inférieur ou égal à b
==a == ba est égal à b
>a> ba est supérieur à b
> =a> = ba est supérieur ou égal à b

Les comparaisons dans le travail de C de gauche à droite, de sorte que vous lisez a> = b comme “ a est supérieur ou égal à b n ° 148.; En outre, l'ordre est important: deux> = et lt; = doit être écrit dans cet ordre, de même que l'opérateur = (pas égal)!. L'opérateur == peut être écrit ou l'autre manière.

Valeurs sont comparées

#include int main () {int premier, deuxième printf ("Saisissez la première valeur:") -scanf ("% d", en premier) -printf ("Entrée de la deuxième valeur:") -scanf ("% d" , seconde) -puts ("évaluation ...") - si (firstsecond) {printf ("% d est supérieur% d n", premier, deuxième) -} return (0) -}

Exercice 2: Créez un nouveau projet en utilisant le code de source indiqué sur valeurs sont comparées. Construire et exécuter.

La comparaison la plus commune est sans doute le double signe égal. Il peut paraître étrange de vous. L'opérateur == est pas le même que l'opérateur =. L'opérateur = est le opérateur d'affectation, qui fixe des valeurs. L'opérateur == est le opérateur de comparaison, qui vérifie si deux valeurs sont égales. (Voir Obtenir “ est égal à n ° 148; dans votre tête.)

Prononcez que == “ est égal à ”.

Exercice 3: Ajouter une nouvelle section pour le code source de valeurs sont comparées qui fait une évaluation finale si les deux variables sont égales les unes aux autres.

GET “ EST EGALE A ” Dans votre tête

#define #include 17int SECRET main () {int conjecture printf ("Pouvez-vous deviner le numéro secret:") -scanf ("% d", conjecture) -Si (devinez == SECRET) {puts ("Vous l'avez deviné ! ") - retour (0) -} if (devinez = SECRET) {puts (" Wrong ") - retour (1) -}}

Exercice 4: Tapez le code source de Get “ est égal à n ° 148; dans votre tête dans un nouveau projet Code :: Blocks. Construire et exécuter.

Prenez note de la valeur retournée par le programme - soit 0 pour une réponse correcte ou 1 pour une mauvaise réponse. Vous pouvez voir que la valeur de retour dans la fenêtre de sortie Code :: Blocks.

La différence entre = et == dans la programmation C

Une des erreurs les plus courantes commises par tous les programmeurs en langage C - débutant et pro - est d'utiliser un seul signe égal au lieu d'un double dans une comparaison, si.

Toujours vrai

#include int main () {int aa = 5-si (a = -3) {printf ("% d égal% d n", un, -3) -} return (0) -}

Exercice 5: Tapez le code de source indiqué sur toujours vrai dans un nouveau projet. Exécutez le programme.

La sortie peut vous intriguer.

-3 est égal à -3

Cela est vrai, non? Mais ce qui est arrivé?

Simple: En Ligne 9, la variable un est attribué la valeur -3. Parce que cette déclaration est à l'intérieur des parenthèses, il est évalué en premier. Le résultat d'une affectation variable C est toujours vrai pour toute valeur non nulle.

Exercice 6: Modifier le code source de toujours vrai de sorte qu'un double signe égal, ou “ est égal à, ” est utilisé à la place du signe égal unique dans le cas de comparaison.

Où mettre le point-virgule dans la programmation C

Virgule Boo-Boo est basée sur toujours vrai, en profitant du fait que C ne nécessite pas une seule déclaration appartenant à un si la comparaison doit se loger entre accolades.

SEMICOLON bobo

#include int main () {int a, ba = 5-b = -3-si (a == b) -printf ("% d égal% d n", a, b) -retour (0) -}

Exercice 7: Saisissez soigneusement le code source à partir virgule Boo-Boo. Portez une attention particulière à la ligne 10. Assurez-vous que vous tapez exactement, avec le point-virgule à la fin de la ligne. Construire et exécuter le projet.

Voici le résultat:

5 est égal à -3

Le problème ici est une commune, une erreur commise par à peu près tous programmeur C de temps en temps: Le point-virgule final (Ligne 10) indique au programme que l'instruction if a rien à faire quand la condition est vraie. En effet, un seul point-virgule est une déclaration complète en C, mais une déclaration nulle. En être témoin:

if (condition) -

Cette construction est essentiellement la même que la ligne 10. Veillez à ne pas faire la même erreur - en particulier lorsque vous tapez le code beaucoup et vous êtes habitué à mettre fin à une ligne avec un point-virgule.


» » » » Comment utiliser la fonction si dans la programmation de c