« Exercices en langage C/Notions de base » : différence entre les versions
Contenu supprimé Contenu ajouté
→Notions de base : On commence simplement |
+avertissement bonnes pratiques |
||
Ligne 1 :
{{Exercices en langage C}}
Ces exercices sur les '''notions de base''' aborderont la saisie et traitement de différents types de données, des calculs simple jusqu'à l'utilisation de la bibliothèque mathématiques.
{{bandeau d'alerte
Pour tous ces exercices, on demandera à l'utilisateur d'entrer des données, et on les récupèrera à l'aide de la fonction <tt>lire_ligne</tt> fournie dans le livre [[Programmation C]] au chapitre [[Programmation C Entrées/sorties#Entrées non formatées|Entrées non formatées]].▼
|style=background: #ffd; width: 100%;>
|image=Achtung.svg|Avertissement
|texte='''Avertissement'''<br/>
Les codes sources présentés sont à vocation pédagogiques ne correspond pas à de bonnes pratiques de programmation notamment en sécurité. L'utilisation de ces programmes compilés peuvent entrainer des [[w:Dépassement de tampon|dépassements de capacité]].
}}
▲
* on ne traitera pas les cas d'erreur où <tt>errno</tt> est placé à une valeur non nulle;
* on n'utilisera pas de compilation séparée pour <tt>lire_ligne</tt>, mais on copiera directement son code dans le fichier contenant la fonction <tt>main</tt>.
=== Exercice 1 ===
Écrire un programme qui demande à l'utilisateur de taper la largeur et la
<div style="width:70%">{{Boîte déroulante|titre=Solution|contenu =
<source lang="C">
#include <stdio.h>
int main(int argc, char *argv[])
{
double largeur, longueur, surface, perimetre;
printf("Tapez la largeur du champ : ");
scanf("%lf", &largeur);
printf("Tapez la longueur du champ : ");
scanf("%lf", &longueur);
surface = largeur * longueur;
perimetre = 2 * (largeur + longueur);
printf("La surface vaut : %lf\n", surface);
printf("Le perimetre vaut : %lf\n", perimetre);
return 0;
}</source>
Avec les bonnes pratiques de programmation C, on utilisera des données de type décimale (float) et la fonction <tt>atof</tt> pour la conversion des entrées en nombres.
<source lang="c">
#include <stdio.h>
Ligne 40 ⟶ 64 :
return 0;
}}</div>
|