Function, Macro & Array Assignment Question.

This is an assignment question that I need assistance with.

'Write a simple address-book program that uses a function to read in the name, address and phone-numbers of BOOK_SIZE people (where BOOK_SIZE is a macro) and stores these values in an array of structures. Write another function that neatly displays this data in a table on the screen. Pass the array as an arguement to these functions.'
LVL 2
cyraxAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Phoenix020397Commented:
Well, I don't know what is your question exactly so I'll write a source code that should do the trick :

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

#define BOOK_SIZE 5 /* Define the BOOK_SIZE macro */

struct T_BOOK  /* Define the Book structure type*/
{
  char name[50], number[15], address[100];
};

void getbook(struct T_BOOK book[]);
void showbook(struct T_BOOK book[]);


void main(void)
{
  struct T_BOOK book[BOOK_SIZE]; /* Define a book varible */
  getbook(book);
  showbook(book);
  return(0);
}

void getbook(struct T_BOOK book[])
{
  int i;

  for (i = 0 ; i < BOOK_SIZE ; i++)
  {
    clrscr();
    printf("Enter name #%d:\n",i+1);
    gets(book[i].name;      
    printf("Enter number #%d:\n",i+1);
    gets(book[i].number;
    printf("Enter address #%d:\n",i+1);
    gets(book[i].address;
  }
}

void showbook(struct T_BOOK book[])
{
  int i;

  clrscr();

  for (i = 0 ; i < BOOK_SIZE ; i++)
  {
    printf("Name #%d: %s\n", i, book[i].name);
    printf("Number #%d: %s\n", i, book[i].number);
    printf("Address #%d: %s\n", i, book[i].address);
    if ( (i+1)*3 == 24 ) { getch(); clrscr(); }
  }
}


Thats it. Thats the program. It reads BOOK_SIZE names to a BOOK_SIZE array of type T_BOOK structure, which contains name, number and address. Then it shows everything and pauses every 24 lines so you won't miss any.
Hope this helps.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
C++

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.