Tricky C Interview Questions

  1. How do you write a program which produces its own source code as its output?
  2. How can I find the day of the week given the date?
  3. Why doesn’t C have nested functions?
  4. What is the most efficient way to count the number of bits which are set in a value?
  5. How can I convert integers to binary or hexadecimal?
  6. How can I call a function, given its name as a string?
  7. How do I access command-line arguments?
  8. How can I return multiple values from a function?
  9. How can I invoke another program from within a C program?
  10. How can I access memory located at a certain address?
  11. How can I allocate arrays or structures bigger than 64K?
  12. How can I find out how much memory is available?
  13. How can I read a directory in a C program?
  14. How can I increase the allowable number of simultaneously open files?
  15. What’s wrong with the call fopen(”c:\newdir\file.dat”, “r”)?


  1. what is the logic behind the output of this program.
    int a=1;

  2. And always remember: Lie, Lie, Lie, and lie some more because they're not interested in YOU. Because anybody who asks questions like this is somebody you DON'T want to work for.