Die Variable pi sollte vom Typ double sein, weil die Rechengenauigkeit steigt. Zwar kann man mit float ca. 8 gültige Ziffern darstellen, aber aufgrund der vielen Divisionen und Addition entstehen sehr schnell Rundungsfehler, die sich dann immer weiter fortplanzen.
Die Variable sum1 sollte ebenfalls vom Typ double sein, denn ansonsten macht man durch sum1=pi*4 die Rechengenauigkeit wieder zunichte.
Die Variable demoninator ist unnötig und kann durch i ersetzt werden (würde ich dann mit "n" bezeichnen). Um sicher zu gehen, dass der Compiler die Division in double ausführt, dann z.B. pi += -1.0 / (double)(2*n+1) schreiben.