double型変数nを読むのにscanf("%d", &n);としている

分割数によってはx==rにならないためにループ回数が不足する