C Programming - A Modern Approach