Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Langue C

Instruction conditionnelle C :IF, IF Else et Nested IF Else avec exemple

Qu'est-ce qu'une instruction conditionnelle en C ?

Énoncés conditionnels en C programmation sont utilisés pour prendre des décisions en fonction des conditions. Les instructions conditionnelles s'exécutent de manière séquentielle lorsqu'il n'y a pas de condition autour des instructions. Si vous mettez une condition pour un bloc d'instructions, le flux d'exécution peut changer en fonction du résultat évalué par la condition. Ce processus est appelé prise de décision en "C".

En programmation "C", les instructions conditionnelles sont possibles à l'aide des deux constructions suivantes :

1. Si instruction

2. Instruction if-else

Il est également appelé branchement car un programme décide quelle instruction exécuter en fonction du résultat de la condition évaluée.

Dans ce tutoriel, vous apprendrez-

Instruction Si

C'est l'une des puissantes déclarations conditionnelles. Si l'instruction est chargée de modifier le flux d'exécution d'un programme. Si l'instruction est toujours utilisée avec une condition. La condition est d'abord évaluée avant d'exécuter toute instruction à l'intérieur du corps de If. La syntaxe de l'instruction if est la suivante :

 if (condition) 
     instruction;

La condition prend la valeur true ou false. True est toujours une valeur différente de zéro et false est une valeur qui contient zéro. Les instructions peuvent être une seule instruction ou un bloc de code entouré d'accolades { }.

Le programme suivant illustre l'utilisation de la construction if en programmation "C":

#include<stdio.h>
int main()
{
	int num1=1;
	int num2=2;
	if(num1<num2)		//test-condition
	{
		printf("num1 is smaller than num2");
	}
	return 0;
}

Sortie :

num1 is smaller than num2

Le programme ci-dessus illustre l'utilisation de la construction if pour vérifier l'égalité de deux nombres.

  1. Dans le programme ci-dessus, nous avons initialisé deux variables avec num1, num2 avec la valeur 1, 2 respectivement.
  2. Ensuite, nous avons utilisé if avec une expression de test pour vérifier quel nombre est le plus petit et quel nombre est le plus grand. Nous avons utilisé une expression relationnelle dans la construction if. Étant donné que la valeur de num1 est inférieure à num2, la condition sera évaluée comme vraie.
  3. Ainsi, il imprimera l'instruction à l'intérieur du bloc de If. Après cela, le contrôle sortira du bloc et le programme se terminera avec un résultat réussi.

Opérateurs relationnels

C a six opérateurs relationnels qui peuvent être utilisés pour formuler une expression booléenne pour prendre une décision et tester des conditions, qui retourne vrai ou faux :

<=inférieur ou égal à

> supérieur à

>=supérieur ou égal à

==égal à

!=différent de

Notez que le test d'égalité (==) est différent de l'opérateur d'affectation (=) car c'est l'un des problèmes les plus courants auxquels un programmeur est confronté en les mélangeant.

Par exemple :

int x = 41;
x =x+ 1;
if (x == 42) {
   printf("You succeed!");}

Sortie :

 You succeed

Gardez à l'esprit qu'une condition évaluée à une valeur différente de zéro est considérée comme vraie.

Par exemple :

int present = 1;
if (present)
  printf("There is someone present in the classroom \n");

Sortie :

There is someone present in the classroom

L'instruction If-Else

L'instruction if-else is est une version étendue de If. La forme générale de if-else est la suivante :

if (test-expression)
{
    True block of statements
}
Else
{
    False block of statements
}
Statements;

Dans ce type de construction, si la valeur de test-expression est true, alors le vrai bloc d'instructions sera exécuté. Si la valeur de test-expression est fausse, alors le faux bloc d'instructions sera exécuté. Dans tous les cas, après l'exécution, le contrôle sera automatiquement transféré aux instructions apparaissant en dehors du bloc de Si.

Les programmes suivants illustrent l'utilisation de la construction if-else :

Nous allons initialiser une variable avec une valeur et écrire un programme pour déterminer si la valeur est inférieure à dix ou supérieure à dix.

Commençons.

#include<stdio.h>
int main()
{
	int num=19;
	if(num<10)
	{
		printf("The value is less than 10");
	}
	else
	{
		printf("The value is greater than 10");
	}
	return 0;
}

Sortie :

The value is greater than 10

  1. Nous avons initialisé une variable avec la valeur 19. Nous devons déterminer si le nombre est supérieur ou inférieur à 10 à l'aide d'un programme en "C". Pour ce faire, nous avons utilisé la construction if-else.
  2. Ici, nous avons fourni une condition num<10 car nous devons comparer notre valeur avec 10.
  3. Comme vous pouvez le voir, le premier bloc est toujours un vrai bloc, ce qui signifie que si la valeur de test-expression est vraie, le premier bloc qui est If sera exécuté.
  4. Le deuxième bloc est un bloc else. Ce bloc contient les instructions qui seront exécutées si la valeur de l'expression-test devient fausse. Dans notre programme, la valeur de num est supérieure à dix, donc la condition de test devient fausse et le bloc est exécuté. Ainsi, notre sortie proviendra d'un bloc else qui est "La valeur est supérieure à 10". Après le if-else, le programme se terminera avec un résultat positif.

En programmation "C", nous pouvons utiliser plusieurs constructions if-else les unes dans les autres, appelées imbrication d'instructions if-else.

Expressions conditionnelles

Il existe une autre façon d'exprimer une instruction if-else en introduisant le ?: opérateur. Dans une expression conditionnelle, le ? : l'opérateur n'a qu'une seule instruction associée au if et au else.

Par exemple :

#include <stdio.h>
int main() {
  int y;
  int x = 2;
   y = (x >= 6) ?  6 : x;/* This is equivalent to:  if (x >= 5)    y = 5;  else    y = x; */
   printf("y =%d ",y);
  return 0;}

Sortie :

y =2

Instructions if-else imbriquées

Lorsqu'une série de décisions est requise, un if-else imbriqué est utilisé. L'imbrication consiste à utiliser une construction if-else dans une autre.

Écrivons un programme pour illustrer l'utilisation de if-else imbriqué.

#include<stdio.h>
int main()
{
	int num=1;
	if(num<10)
	{
		if(num==1)
		{
			printf("The value is:%d\n",num);
		}
		else
		{
			printf("The value is greater than 1");
		}
	}
	else
	{
		printf("The value is greater than 10");
	}
	return 0;
}

Sortie :

The value is:1

Le programme ci-dessus vérifie si un nombre est inférieur ou supérieur à 10 et imprime le résultat à l'aide de la construction if-else imbriquée.

  1. Tout d'abord, nous avons déclaré une variable num avec la valeur 1. Ensuite, nous avons utilisé la construction if-else.
  2. Dans le if-else externe, la condition fournie vérifie si un nombre est inférieur à 10. Si la condition est vraie, alors et seulement alors, elle exécutera la boucle interne. Dans ce cas, la condition est vraie, donc le bloc interne est traité.
  3. Dans le bloc interne, nous avons à nouveau une condition qui vérifie si notre variable contient la valeur 1 ou non. Lorsqu'une condition est vraie, elle traitera le bloc If, sinon elle traitera un bloc else. Dans ce cas, la condition est vraie d'où le Si un bloc est exécuté et la valeur est imprimée sur l'écran de sortie.
  4. Le programme ci-dessus imprimera la valeur d'une variable et se terminera avec succès.

Essayez de changer la valeur de la variable pour voir comment le programme se comporte.

REMARQUE : Dans if-else imbriqué, nous devons être prudents avec l'indentation car plusieurs constructions if-else sont impliquées dans ce processus, il devient donc difficile de comprendre les constructions individuelles. Une indentation appropriée facilite la lecture du programme.

Instructions Else-if imbriquées

Nested else-if est utilisé lorsque des décisions multi-chemins sont nécessaires.

La syntaxe générale de la construction des échelles else-if en programmation "C" est la suivante :

 if (test - expression 1) {
    statement1;
} else if (test - expression 2) {
    Statement2;
} else if (test - expression 3) {
    Statement3;
} else if (test - expression n) {
    Statement n;
} else {
    default;
}
Statement x;

Ce type de structure est connu sous le nom d'échelle else-if. Cette chaîne ressemble généralement à une échelle, d'où son nom d'échelle else-if. Les expressions de test sont évaluées de haut en bas. Chaque fois qu'une vraie expression de test est trouvée, l'instruction qui lui est associée est exécutée. Lorsque toutes les n expressions de test deviennent fausses, l'instruction else par défaut est exécutée.

Voyons le fonctionnement réel à l'aide d'un programme.

#include<stdio.h>
int main()
{
	int marks=83;
	if(marks>75){
		printf("First class");
	}
	else if(marks>65){
		printf("Second class");
	}
	else if(marks>55){
		printf("Third class");
	}
	else{
		printf("Fourth class");
	}
	return 0;
}

Sortie :

First class

Le programme ci-dessus imprime la note en fonction des notes obtenues lors d'un test. Nous avons utilisé la construction de l'échelle else-if dans le programme ci-dessus.

  1. Nous avons initialisé une variable avec des marques. Dans la structure en échelle else-if, nous avons fourni diverses conditions.
  2. La valeur des marques variables sera comparée à la première condition puisqu'il est vrai que la déclaration qui lui est associée sera imprimée sur l'écran de sortie.
  3. Si la première condition de test s'avère fausse, elle est comparée à la deuxième condition.
  4. Ce processus se poursuivra jusqu'à ce que l'expression all soit évaluée, sinon le contrôle sortira de l'échelle else-if et l'instruction par défaut sera imprimée.

Essayez de modifier la valeur et notez le changement dans la sortie.

Résumé


Langue C

  1. Expressions, instructions et blocs C# (avec exemples)
  2. C# if, if...else, if...else if et Nested if Statement
  3. C++ if, if...else et Nested if...else
  4. C if...else Déclaration
  5. Opérateurs en C++ avec exemple :qu'est-ce que c'est, les types et les programmes
  6. Instruction C++ Switch Case avec EXAMPLE
  7. Structure C++ avec exemple
  8. std ::list en C++ avec exemple
  9. Différence entre structure et classe :expliquée avec un exemple C++