C has two (well three) ways of putting several values into one container.

	. array : a sequence of memory storage units holding several of one type
	. struct : a single unit that contains multiple values of any types
	. union : a single unit that contains multiple value of any types
			but not at the same time.

An array is defined with syntax of the form:

	int temps[7];		// temperatures for a week

	temps[0] = 24;
	temps[1] = 31;
	temps[2] = 18;

	printf("The temp on day %d is %d\n", 2, temps[2]);

	int ytemps[52][7];	

	ytemps[0][4] = 6;

A struct is defined with syntax of the form:

	#define	NAME_LEN	100
	#define PHONE_NUM_LEN	10
	#define CITY_LEN	40

	struct contact 		// defines the type
	{
		char	name[NAME_LEN];
		char	cellnum[PHONE_NUM_LEN+1];
		char	worknum[PHONE_NUM_LEN+1];
		int	age;
		char	city[CITY_LEN];
		float	temp;
	};

	struct contact ann;

To retrieve/get the value in an array use this syntax:

	(temps[0] + temps[1] +temps[2] )/3.0;


To retrieve/get the value in a struct use this syntax:

	ann.age = 22;
	ann.temp = 98.6;
	ann.name = "Ann Appleton";		// not ok....

Note: arrays can contain arrays:

	int yeartemp[52][7];			// 52 arrays each with 7 ints

	struct addr {
			char street[STREET_NAME_LEN];	// main
			int  number;			// 123
			int  floor;			// 9
			char apt;			// 'D'
	};

Note: structs can contain structs:

	struct contact {
			struct addr	where;
			struct name	who;
	};

	struc contact ben;

	ben.where.number = 123;

Note: structs can contain arrays -- see excample above

Note: arrays can contain structs

	struct contact contact_list[MAX_CONTACTS]; 	// array of structs

	contact_list[4].where.apt = 'F';
