home *** CD-ROM | disk | FTP | other *** search
/ Sams Teach Yourself C in 21 Days (6th Edition) / STYC216E.ISO / mac / Examples / TR / find_nbr.c < prev    next >
C/C++ Source or Header  |  2002-04-21  |  1KB  |  57 lines

  1. /* Name:     find_nbr.c
  2.  * Purpose:  This program picks a random number and then
  3.  *           lets the user try to guess it
  4.  * Returns:  Nothing
  5.  */
  6.  
  7. #include <stdio.h>
  8. #include <stdlib.h>
  9. #include <time.h>
  10.  
  11. #define NO   0
  12. #define YES  1
  13.  
  14. int main( void )
  15. {
  16.     int guess_value = -1;
  17.     int number;
  18.     int nbr_of_guesses;
  19.     int done = NO;
  20.  
  21.     printf("\n\nGetting a Random number\n");
  22.  
  23.     /* use the time to seed the random number generator */
  24.     srand( (unsigned) time( NULL ) );
  25.     number = rand();
  26.  
  27.     nbr_of_guesses = 0;
  28.     while ( done == NO )
  29.     {
  30.          printf("\nPick a number between 0 and %d> ", RAND_MAX);
  31.          scanf( "%d", &guess_value );  /* Get a number */
  32.  
  33.          nbr_of_guesses++;
  34.  
  35.          if ( number == guess_value )
  36.          {
  37.              done = YES;
  38.          }
  39.          else
  40.          if ( number < guess_value )
  41.          {
  42.              printf("\nYou guessed high!");
  43.          }
  44.          else
  45.          {
  46.              printf("\nYou guessed low!");
  47.          }
  48.     }
  49.  
  50.     printf("\n\nCongratulations! You guessed right in %d Guesses!",
  51.              nbr_of_guesses);
  52.     printf("\n\nThe number was %d\n\n", number);
  53.  
  54.     return 0;
  55. }
  56.  
  57.