/*****************************************************************************/
/* File:     vb-struct.c
 * Status:   18-apr-2002, pfk.
 *           03-nov-2010, wlm
 * Functie:  Programma met structures.
 *****************************************************************************/

#include <stdio.h>
#include <stdlib.h>

struct point /* globale declaratie van structure van type 'struct point' */
{
	int x; /* eerste veld of 'member' van structure */
	int y; /* tweede veld of 'member' van structure */
};

int main() {
	/* declaratie van variabelen van type 'struct point' */
	struct point enkelepunt = { 0, 5 };
	struct point hoekpuntenDriehoek[3];
	struct point hoekpuntenVierhoek[4] = { { -1, 0, }, { 0, 2, }, { 1, 0, }, {
			-1, 0 } };

	int teller;

	printf("Enkele punt: %4d %4d\n", enkelepunt.x, enkelepunt.y);
	/* adresseer afzonderlijke velden van de array-elementen */
	hoekpuntenDriehoek[0].x = -1;
	hoekpuntenDriehoek[0].y = 0;
	hoekpuntenDriehoek[1].x = 1;
	hoekpuntenDriehoek[1].y = 0;
	hoekpuntenDriehoek[2].x = 0;
	hoekpuntenDriehoek[2].y = 1;

	printf("Hoekpunten van driehoek:\n");
	/* print array-elementen stuk voor stuk */
	for (teller = 0; teller < 3; teller++)
		printf("  %4d %4d\n", hoekpuntenDriehoek[teller].x,
				hoekpuntenDriehoek[teller].y);

	printf("Hoekpunten van vierhoek:\n");
	for (teller = 0; teller < 4; teller++)
		printf("  %4d %4d\n", hoekpuntenVierhoek[teller].x,
				hoekpuntenVierhoek[teller].y);

	return (0);
}
