Si lo ejecutás con el debugger y te detenés en un breakpoint en
Código:
diff = ( (double)clock() - (double)start ) / (double)CLOCKS_PER_SEC;
unos segundos y luego le das next step al debugger y diff te sigue dando 0 es claro que hay un error. Fijate de usar una alternativa a ese contador que estas usando.