Fiche de révision : Bases du langage C

Plan du Cours

  1. Histoire et architecture du C
  2. Structure d’un programme C
  3. Entrées et sorties
  4. Types et stockage des données
  5. Constantes et identificateurs
  6. Instructions et structures de contrôle
  7. Expressions et opérateurs
  8. Commentaires et traduction algorithmique

1. Histoire et architecture du C

★ À maîtriser

  • En 1978, Brian W. Kernighan et Dennis M. Ritchie publient « The C programming language ». — Brian W. Kernighan et Dennis M.Ritchie

Compléments

  • Entre 1983 et 1988, le langage C fait l’objet d’une normalisation ANSI avec le C++.

Astuce mémo

Code machine → FORTRAN → C → normalisation ANSI

2. Structure d’un programme C

Notions clés & Définitions

  • Programme C : Suite ordonnée de déclarations ou de définitions de types, de variables et de sous-programmes.

★ À maîtriser

  • La fonction main est la première fonction appelée lors de l’exécution et elle appelle les autres sous-programmes.

📌 Tout nom de type, de variable ou de fonction doit être déclaré avant d’être utilisé.

📌 Les blocs d’un programme C sont délimités par les accolades { et }, et les instructions simples se terminent par un point-virgule.

Compléments

  • La directive de préprocesseur #include permet d’inclure les déclarations de sous-programmes prédéfinis dans les bibliothèques.

Astuce mémo

Un programme comme une maison : bibliothèques, fonctions, puis main

3. Entrées et sorties

Notions clés & Définitions

  • cout : Permet d’afficher un message, une variable ou une constante à l’écran en utilisant l’opérateur <<.
  • cin : Permet de récupérer une valeur fournie par l’utilisateur en utilisant l’opérateur >>.

Points essentiels

  • L’instruction cout << "bienvenue " << a << endl; affiche le texte, le contenu de a, puis passe à la ligne.

📌 L’instruction cin >> a >> b >> c; permet de saisir successivement les trois variables a, b et c.

Astuce mémo

cout sort vers l’écran, cin entre depuis le clavier

4. Types et stockage des données

Notions clés & Définitions

  • Octet : Vecteur de huit bits pouvant représenter 256 valeurs différentes.

★ À maîtriser

  • Les correspondances principales sont:

    • entier : int ou short
    • réel : float ou double
    • booléen : bool
    • caractère : char
  • Une variable float occupe 4 octets, une variable double 8 octets, une variable char 1 octet et une variable int 4 octets.

Compléments

  • Les variables sont stockées dans la mémoire vive et repérées par leur emplacement ou leur adresse.

Astuce mémo

float stocke moins précisément, double calcule avec davantage de précision

5. Constantes et identificateurs

Notions clés & Définitions

  • Constante : Nom désignant une valeur non modifiable pendant l’exécution d’un programme.

★ À maîtriser

📌 La directive #define remplace toutes les occurrences d’un identifiant par la valeur placée immédiatement derrière lui, sans typer la constante.

📌 Un identificateur commence par une lettre, peut contenir des lettres, des chiffres ou un soulignement, et ne doit contenir ni accent, ni espace, ni tiret.

Compléments

  • L’instruction const int DIX = 10; déclare une constante entière typée appelée DIX.

Astuce mémo

#define remplace un nom, const crée une constante typée

6. Instructions et structures de contrôle

Notions clés & Définitions

  • Bloc d’instructions : Séquence d’instructions entre accolades, considérée comme une instruction et pouvant contenir des blocs imbriqués.

Points essentiels

  • Une instruction simple est exécutée séquentiellement de haut en bas, dans le sens de la lecture.

  • L’instruction if exécute une première action si la condition est vraie et, si elle est fausse, l’action du bloc else lorsqu’il existe.

  • La boucle while exécute son bloc tant que l’expression conditionnelle est vraie.

  • La boucle do while exécute son bloc puis évalue la condition, ce qui garantit une exécution minimale du bloc.

  • La boucle for regroupe une initialisation, une condition d’itération et une instruction de progression dans la forme for (instruction1; expressionCondition; instruction2).

📌 Dans switch, chaque case associe une valeur à des actions, break sort du switch et default s’exécute si aucune valeur ne correspond.

Astuce mémo

Instruction → bloc → alternative → boucle → sélection

7. Expressions et opérateurs

★ À maîtriser

📐 Formule — Pour deux opérandes entiers, la division est entière : 1/2=01 / 2 = 0.

📐 Formule — Le modulo % donne le reste de la division entière, par exemple 12%5=212 \% 5 = 2 et 5%12=55 \% 12 = 5.

  • Les opérateurs relationnels sont:
    • == : égal
    • != : différent
    • <= : inférieur ou égal
    • < : inférieur
    • = : supérieur ou égal

    • : supérieur

📌 Il ne faut pas utiliser == avec les réels à cause des problèmes de précision du codage.

  • Les opérateurs logiques sont:

    • && : ET
    • || : OU
    • ! : NON
  • En C, la valeur entière 0 représente faux et les autres valeurs représentent vrai, souvent sous la forme 1.

Compléments

  • L’expression a = i++; affecte à a l’ancienne valeur de i puis incrémente i, tandis que a = ++i; incrémente i puis affecte sa nouvelle valeur à a.

Astuce mémo

== compare, = affecte ; && combine, || alterne

8. Commentaires et traduction algorithmique

★ À maîtriser

  • La traduction d’une alternative algorithmique Si condition Alors Action1 Sinon Action2 s’écrit en C avec if (condition) { Action1 } else { Action2 }.

  • La traduction de TantQue condition Faire Action s’écrit en C avec while (condition) { Action }.

  • La traduction d’une boucle Pour avec initialisation, condition et pas s’écrit en C avec for (initialisation; condition; pas) { Action }.

Compléments

📌 Un commentaire sur plusieurs lignes est délimité par /* et */, tandis qu’un commentaire en fin de ligne commence par //.

Tableaux de synthèse

Structures de contrôle

StructureTest de conditionExécution minimale
if / elseChoix entre branchesUne branche
whileAvant le bloc0 fois
do whileAprès le bloc1 fois
forDans l’en-têteSelon la condition

Opérateurs d’entrée-sortie

OpérateurSensUsage
cout <<Programme vers écranAfficher
cin >>Clavier vers programmeSaisir

Teste tes connaissances

Teste tes connaissances sur Bases du langage C avec 23 questions à choix multiples et corrections détaillées.

1. Quelle différence décrit correctement les boucles while et do while ?

2. Comment peut-on caractériser la structure générale d’un programme C ?

Faire le QCM →

Révisez avec les flashcards

Mémorisez les concepts clés de Bases du langage C avec 51 flashcards interactives.

En quelle année Brian W. Kernighan et Dennis M. Ritchie ont-ils publié « The C programming language » ?

En 1978.

Qui a publié « The C programming language » en 1978 ?

Brian W. Kernighan et Dennis M. Ritchie.

Entre quelles années le langage C a-t-il été normalisé par l'ANSI ?

Entre 1983 et 1988.

Voir les flashcards →

Cours similaires

Crée tes propres fiches de révision

Importe ton cours et l'IA génère fiches, QCM et flashcards en 30 secondes.

Générateur de fiches