混乱したと思いますか？任意の2つのポイント間の距離を見つけたいのですが、あなたの関数はポイント（0,0）と（a、b）の間の距離のみを返すようです。
あなたは正しいです、ここに修正された関数があります：

#include <math.h>

double dist（double x_1、double y_1、double x_2、double y_2）{
return sqrt（pow（x_2 -x_1、2） + pow（y_2 -y_1、2））;
}