Structures and Functions
Lektion 5 von 8 im Kurs C/C++ Strukturen von Coddy.
Sobald Sie eine Struktur in der C/C++-Datei erstellt haben, können Sie diese Struktur als Funktionsargument oder als Rückgabewerttyp verwenden.
Nehmen wir zum Beispiel an, Person ist eine Struktur:
void greet(Person p) {
cout << "Hello, " << p.name << endl;
}In C müssen Sie das Schlüsselwort struct davor hinzufügen:
void greet(struct Person p) {
printf("Hello, %s\n", p.name);
}Aufgabe
EinfachIhnen wird ein Teil des Codes zur Verfügung gestellt, der eine Point-Struktur erstellt, zwei Punkte initialisiert und den Abstand zwischen ihnen berechnet.
Ihre Aufgabe ist es, eine Funktion namens calcDistance zu erstellen, die zwei Point-Strukturen als Argumente erhält, den Abstand berechnet und diesen zurückgibt (Typ int).
Gegeben zwei Punkte p1 und p2, ist der Abstand zwischen ihnen:
(p2.x - p1.x) * (p2.x - p1.x) + (p2.y - p1.y) * (p2.y - p1.y)Sie müssen die main-Funktion überhaupt nicht ändern!
Probier es selbst
#include <stdio.h>
struct Point {
int x;
int y;
};
// Implementiere calcDistance hier
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;
};