Someone explain me why this isn't working!

This program is supposed to put a "%" on the screen then move it around when the user presses keys.
a: left
s: right
w: up
z: down
It doesn't work. The program just puts another "%" right next to the other one.

Parameters
hConsoleOutput
Handle to a console screen buffer. The handle must have GENERIC_WRITE access.
lpConsoleCursorInfo
Pointer to a CONSOLE_CURSOR_INFO structure containing the new specifications for the screen buffer's cursor.
Return Values
If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError.

Remarks
When a screen buffer's cursor is visible, its appearance can vary, ranging from completely filling a character cell to showing up as a horizontal line at the bottom of the cell. The dwSize member of the CONSOLE_CURSOR_INFO structure specifies the percentage of a character cell that is filled by the cursor. If this member is less than 1 or greater than 100, SetConsoleCursorInfo fails.

CONSOLE_CURSOR_INFO
The CONSOLE_CURSOR_INFO structure contains information about the console cursor.

Members
dwSize
Specifies a number between 1 and 100, indicating the percentage of the character cell that is filled by the cursor. The cursor appearance varies, ranging from completely filling the cell to showing up as a horizontal line at the bottom of the cell.
bVisible
Specifies the visibility of the cursor. If the cursor is visible, this member is TRUE.