Structures and Functions
Leçon 5 sur 8 du cours Structures en C/C++ de Coddy.
Une fois que vous avez créé une structure dans le fichier C/C++, vous pouvez utiliser cette structure comme argument de fonction ou comme type de valeur de retour.
Par exemple, supposons que Person soit une structure :
void greet(Person p) {
cout << "Hello, " << p.name << endl;
}En C, vous devez ajouter le mot-clé struct avant :
void greet(struct Person p) {
printf("Hello, %s\n", p.name);
}Défi
FacileOn vous donne une partie du code qui crée une structure Point, initialise deux points et calcule la distance entre eux.
Votre tâche consiste à créer une fonction nommée calcDistance qui reçoit deux structures Point en arguments, calcule la distance et la renvoie (type int).
Étant donné deux points p1 et p2, la distance entre eux est :
(p2.x - p1.x) * (p2.x - p1.x) + (p2.y - p1.y) * (p2.y - p1.y)Vous n'avez pas du tout besoin de modifier la fonction main !
Essayez vous-même
#include <stdio.h>
struct Point {
int x;
int y;
};
// Implémentez calcDistance ici
int main() {
char tmp[50];
int p1x, p1y, p2x, p2y;
scanf("%s %d %d", &tmp, &p1x, &p1y);
scanf("%s %d %d", &tmp, &p2x, &p2y);
struct Point p1 = {p1x, p1y};
struct Point p2 = {p2x, p2y};
int distance = calcDistance(p1, p2);
printf("Distance between p1 and p2: %d", distance);
return 0;
};