できるよ。

/* suicide.c */
#include <stdio.h>
#include <unistd.h>
#include <sys/param.h>

#define SELF_EXE "/proc/self/exe"

int main(int argc, char** argv)
{
  char self[MAXPATHLEN];
  int n = readlink(SELF_EXE, self, sizeof self);
  if (n < 0) {
    perror("readlink");
    return 1;
  }
  self[n] = 0;
  printf("%s = %s\n", argv[0], self);
  if (unlink(argv[0])) {
    perror(argv[0]);
  }
  else {
    execv(SELF_EXE, argv);
  }
  return 0;
}

$ make suicide
cc suicide.c -o suicide
$ ./suicide
./suicide = /tmp/suicide
./suicide = /tmp/suicide (deleted)
./suicide: No such file or directory