400 Exercices Corrigés En C – Partie 4
La meilleure façon d’apprendre quelque chose est de pratiquer des exercices. Nous avons préparer ces exercices corrigés pour les personnes (débutantes ou intermédiaires) qui sont familières avec le langage C et programmation. Nous espérons que ces exercices vous aideront à améliorer vos compétences sur le langage C et programmation. Les exercices corrigés suivantes sont actuellement disponibles, nous travaillons dur pour ajouter plus d’exercices. Bon apprentissage!
Vous pouvez lire notre tutoriel sur le langage C avant de résoudre les exercices suivants.
51. Écrire un programme en C qui convertit une température en degrés Celsius en degrés Fahrenheit. Utilisez les variables « celsius », « fahrenheit » et la formule de conversion pour effectuer le calcul.
Formule: Fahrenheit (°F) = (Température en degrés Celsius (°C) * 9/5) + 32
Exemple de sortie:
Entrez la température en degrés Celsius: 45 La température en Fahrenheit est: 113
#include <stdio.h> void main() { float celsius,fahrenheit; printf("Entrez la température en degrés Celsius:"); scanf("%f",&celsius); fahrenheit = (1.8 * celsius) + 32; printf("La température en Fahrenheit est: %f ",fahrenheit); return 0; }
52. Écrire un programme en C qui permute ou échange deux nombres saisis par l’utilisateur, mais avec seulement deux variables N1 et N2 sans utiliser une variable temporaire.
Exemple de sortie:
Entrer le nombre N1 : 10 Entrer le nombre N2 : 5 ------permutation------ N1 = 5 N2 = 10
#include <stdio.h> int main() { int N1,N2; printf("Entrer le nombre N1:"); scanf("%d", &N1); printf("Entrer le nombre N2:"); scanf("%d", &N2); N1 = N1 + N2; N2 = N1 - N2; N1 = N1 - N2; printf("N1 = %d\n", N1); printf("N2 = %d", N2); return 0; }
53. Écrire un programme en C qui permute et affiche les valeurs des trois nombres (N1, N2 et N3) saisis par l’utilisateur, en ordre croissant c’est-à-dire (N1 < N2 < N3).
Exemple de sortie:
Entrer le nombre N1 : 10 Entrer le nombre N2 : 1 Entrer le nombre N3 : 5 ------permutation------ N1 = 1 N2 = 5 N3 = 10
#include <stdio.h> int main() { int N1,N2,N3,tmp; printf("Entrer le nombre N1:"); scanf("%d",&N1); printf("Entrer le nombre N2:"); scanf("%d",&N2); printf("Entrer le nombre N3:"); scanf("%d",&N3); if(N1>N2) { tmp = N1; N1 = N2; N2 = tmp; } if(N1>N3) { tmp = N1; N1 = N3; N3 = tmp; } if(N2>N3) { tmp = N2; N2 = N3; N3 = tmp; } printf("N1 = %d\n", N1); printf("N2 = %d\n", N2); printf("N3 = %d", N3); return 0; }
54. Écrire une fonction qui vérifie deux températures données et renvoie TRUE si l’une des températures est inférieure à 0 et l’autre supérieure à 50, sinon il renvoie FALSE.
Exemple de sortie:
checkTemp(100, -1) -> TRUE checkTemp(2, 100) -> FALSE
#include <stdio.h> //Déclarez la fonction "checkTemp" avec deux paramètres int checkTemp(int t1, int t2); int main(void) { /* Appeler la fonction "checkTemp" avec l'argument 100 et -1 et afficher le résultat */ printf("%d", checkTemp(100, -1)); /* Appeler la fonction "checkTemp" avec l'argument 2 et 100 et afficher le résultat */ printf("%d", checkTemp(2, 100)); } // Définition de la fonction "checkTemp" int checkTemp(int t1, int t2) { // Retourne 1 (true) si l'une des conditions suivantes est vraie return t1 < 0 && t2 > 50 || t2 < 0 && t1 > 50; }
55. Écrire une fonction qui affiche si le nombre passé en paramètre est pair ou impair.
Exemple de sortie:
3 est impair. 2 est pair.
#include <stdio.h> void paireOuImpaire(int N) { // Trouver le reste int reste = N % 2; if (reste == 0){ printf("Paire"); } else{ printf("Impaire"); } } int main() { // Appel à la fonction paireOuImpaire(N); return 0; }
56. Écrire une fonction qui retourne le nombre de caractères dans une chaîne de caractères passée en paramètre.
Exemple de sortie:
Entrez une chaîne de caractères: Hello Le nombre de caractères est: 5
#include <stdio.h> int nbrChar(char str[]) { int lg; // lg stocke la longueur de la chaîne /* incrémenter la variable lg jusqu'à la fin de la chaîne de caractères */ for(lg = 0; str[lg] != '\0'; ++lg); // renvoie le nombre de caractères de la chaîne return lg; } int main() { // Appel à la fonction int n = nbrChar("Hello"); // n = 5 return 0; }
58. Écrire une fonction qui permet de calculer la valeur absolue d’un nombre donné (en utilisant l’opérateur ternaire ?: ).
#include <stdio.h> int nbrAbsolue(int n) { return n < 0 ? -n : n; } int main() { // Appel à la fonction int n = nbrAbsolue(-5); // n = 5 return 0; }
59. Écrire une fonction qui trouve le nombre de fois un caractère se trouve dans une chaîne de caractères. La fonction prend en paramètre le caractère à trouver et la chaîne de caractères.
#include <stdio.h> int compterNbrOccurrence(char* str, char c) { int compteur = 0; while (*str) { //itérer caractère par caractère if (*str == c){ //vérifier s'il y a une correspondance compteur++; //incrémenter le cmpt s'il y a une correspondance } str++; // passer au caractère suivant } return compteur; //renvoyer le nbr de fois le caractère s'est trouvé } int main() { char str[100]; char c; printf("Saisissez une chaîne de caractères:"); scanf("%s", str); printf("Saisir le caractère à rechercher:"); scanf("%c", &c); int o = compterNbrOccurrence(str, c); printf("Le caractère '%c' apparaît %d fois(s) dans la chaîne de caractères.\n", c, o); return 0; }
Sortie:
Saisissez une chaîne de caractères: Hello World! Saisir le caractère à rechercher: o Le caractère 'o' apparaît 2 fois(s) dans la chaîne de caractères.
60. Écrire une fonction qui permet d'afficher la table de multiplication d’un nombre N.
#include <stdio.h> void tableMultiplication(int N) { int i; for(i=1; i <= 10; i++) { printf("%d x %d = %d\n", N,i,N*i); } } int main() { int nbr; printf("Saisir un nombre positif\n"); scanf("%d", &nbr); tableMultiplication(nbr); return 0; }