topical media & game development

talk show tell print

basic-program-code-05-Ex5-13.c

? / basic-program-code-05-Ex5-13.c


  // Ex5_13.cpp
  // Using a static variable within a function
  include <iostream>
  using std::cout;
  using std::endl;
  
  void record(void);      // Function prototype, no arguments or return value
  
  int main(void)
  {
     record();
  
     for(int i = 0; i <= 3; i++)
        record();
  
     cout << endl;
     return 0;
  }
  
  // A function that records how often it is called
  void record(void)
  {
     static int count = 0;
     cout << endl
          << "This is the " << ++count;
     if((count > 3) && (count < 21))         // All this....
        cout <<"th";
     else
        switch(count%10)                     // is just to get...
        {
           case 1: cout << "st";
                   break;
           case 2: cout << "nd";
                   break;
           case 3: cout << "rd";
                   break;
           default: cout << "th";            // the right ending for...
        }                                    // 1st, 2nd, 3rd, 4th, etc.
     cout << " time I have been called";
     return;
  }
  


(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.