Basic C copy file implementation
You test the return value of fwrite, which is good. However, fread may fail as well. Since fread doesn't distinguish error from end of file, you should call ferror:

    while ((num_elements = fread(....)) &gt; 0) {
        ....
    }
    if (ferror(src)) {
        handle_error
    }

fprintf(stdout), while technically valid, looks strange. A printf suffices.
cpy_buf doesn't belong to main. Define it directly in cpy.
Prefer passing file names via command line arguments.
The "Aborting..." message doesn't have a terminating newline, and the next prompt will be printed on the same line (on any shell except cmd.exe). Make a habit to print a newline at the end of the message.