To explain this better:
You write the program into a file called "cprog.c".
Then after you execute "gcc cprog.c -o cprog", use the command "ls" to list the current files in the directory ("man ls" for more info).
You should see a file called "cprog". This file cprog was created when you did the "gcc cprog.c -o cprog", and this command means that you use the program gcc (gnu c compiler) on the c source file "cprog.c". Then the "-o" means to output the binary file to "cprog". If you hadn't used "-o", gcc would have generated a file called "a.out". ("man gcc" for more info)
Lastly, you can execute the file "cprog" by typing "./cprog" into the terminal. This means to check the directory "./" (which means the current directory that you are in) for the file "cprog". If you didn't specify that "cprog" was in "./", then the operating system would have assumed "cprog" was in "/usr/bin" or another directory (if you want to know type "$PATH" into your terminal).