With a bit of explanation:
// Always use int main, never void (there is just one exception and that is operating
// system kernel programming, because that doesn't ever return value, but calls HALT
// causing PC to shutdown.
// Declare variables where to store first number, second number and their sum
int x, y, sum;
// Print out to user, that he needs to enter two numbers
printf("Enter 2 numbers.\n");
// Now scan the next input line, it should contain 2 numbers separated by space
// You might wonder, why there is '&' symbol before each variable. Read something
// on memory and pointers-to-memory -> that should explain why '&' is there.
// In short, scanf stores read values at some place in a memory and it needs you
// to provide memory-address of that place in memory (with a so called pointer
// variable). Getting memory-address of some variable 'x' is done by using
// dereference operator - '&x', getting value of memory address is opposite process
// and is done using reference operator - '*x'.
scanf("%d %d", &x, &y);
// After scanf, there will always be new char pending (newline), getchar now
// Compute sum of the values
sum = x + y;
// Print it out
printf("sum = %d\n", sum);
// Wait for return, then exit the program
// Success means return value of 0