Practical Code Examples
Opérations mathématiques de base
Fonctions trigonométriques
#include <stdio.h>
#include <math.h>
int main() {
double angle = M_PI / 4; // 45 degrees
printf("sin(45°): %f\n", sin(angle));
printf("cos(45°): %f\n", cos(angle));
return 0;
}
Scénarios de calcul avancés
Calculs exponentiels et logarithmiques
#include <stdio.h>
#include <math.h>
int main() {
double base = 2.0;
double exponent = 3.0;
printf("Power calculation: %.2f\n", pow(base, exponent));
printf("Natural logarithm: %.2f\n", log(base));
printf("Base 10 logarithm: %.2f\n", log10(base));
return 0;
}
Arrondi et valeur absolue
Manipulation de la précision
#include <stdio.h>
#include <math.h>
int main() {
double numbers[] = {-3.7, 2.3, 4.5, -1.2};
for (int i = 0; i < 4; i++) {
printf("Original: %.2f\n", numbers[i]);
printf("Ceiling: %.2f\n", ceil(numbers[i]));
printf("Floor: %.2f\n", floor(numbers[i]));
printf("Absolute: %.2f\n\n", fabs(numbers[i]));
}
return 0;
}
Catégories de fonctions mathématiques
Catégorie |
Fonctions |
But |
Trigonométrique |
sin(), cos(), tan() |
Calculs d'angles |
Exponentielle |
exp(), log(), pow() |
Opérations exponentielles |
Arrondi |
ceil(), floor(), round() |
Précision des nombres |
Comparaison |
fmax(), fmin() |
Comparaisons numériques |
Scénarios mathématiques complexes
Calculs statistiques
#include <stdio.h>
#include <math.h>
double calculate_standard_deviation(double data[], int size) {
double sum = 0.0, mean, variance = 0.0;
// Calculate mean
for (int i = 0; i < size; i++) {
sum += data[i];
}
mean = sum / size;
// Calculate variance
for (int i = 0; i < size; i++) {
variance += pow(data[i] - mean, 2);
}
variance /= size;
return sqrt(variance);
}
int main() {
double data[] = {2, 4, 4, 4, 5, 5, 7, 9};
int size = sizeof(data) / sizeof(data[0]);
printf("Standard Deviation: %.2f\n",
calculate_standard_deviation(data, size));
return 0;
}
Workflow de compilation
graph LR
A[Source Code] --> B[Compile with -lm]
B --> C[Link Math Library]
C --> D[Executable Program]
Astuce d'apprentissage LabEx
Lorsque vous pratiquez ces exemples, LabEx recommande d'expérimenter avec différentes valeurs d'entrée et de comprendre le comportement des fonctions mathématiques.
Considérations sur la gestion des erreurs
- Vérifiez les valeurs de retour des fonctions mathématiques
- Gérez les erreurs potentielles de domaine et de plage
- Utilisez
isnan()
et isinf()
pour détecter les valeurs spéciales