s[i] == 0 は文字列の終端かどうかの検査。つまりbreakしなかったことの検査。
for の終了条件も同様。>>794 に fgets() でとった文字列と書かれているので、
s が '\0' で終端していることが仮定されているのだろう。