Build a time struct for current time in UTC
Being brutally honest with you: your comments are useless. All of them could be erased. In special, this one is also misleading:


now = time( NULL ); /* NULL is a control character */



Wut? No NULL is not a control character. You can pass a time_t pointer to time() and get the output written to the given variable, or you can pass NULL and get the output from the returned value. It has nothing to do with 'control characters', whatever that means.

Just yesterday I answered this question that had the same problem with noisy comments. I'll quote my own answer:


  Don't write noisy and obvious comments. The overall rule about code
  commenting is to use them to explain why you solved a problem in a
  given way, or to give any extra information (web links, mathematical
  formulas, etc) that will aid the understanding of a piece of code.
  Explaining what the code is doing should not be necessary if the code is well written. Well written code is self explanatory.




Apart from that, I would also give print_struct_parts() a better name that reflects what kind of struct it is printing. print_time() comes to mind...

Maybe also consider taking a FILE stream as parameter so that the caller is not bound to stdout.