真面目にやるなら、MD5とかSHA1とかなんだろうけど、お手軽にこんな感じで。

#include <stdlib.h>

unsigned short hash(char* s)
{
unsigned short a=0;

int i=0;
unsigned seed=0;
srand(0);
while (s[i]!='\0') {
srand(rand(s[i]));
i++;
}

return(rand()/0xffff);
}