Rica ederim.
Öncelikle nerelerde for nerelerde foreach kullanmanın gerekli olduğunu kafanızda oluşturmanız gerekir. Daha doğrusu hangisi beni daha kısa yoldan sonuca ulaştırabilir diye düşünmek daha mantıklı sanırım. Sayısı belli olmayan veya sonradan artma ihtimali olan ve aynı aynı zamanda içeriğindeki veriler bir düzene göre olan bilgilerde for kullanmak mantıklı. Mesela burada sorular bir düzene göre, 1,2,3.. diye gidiyor. For bunun için ideal. Tabii ekstrem durumlar olursa yani 1,3,5.. gibi giden soru numaraları orda da ona göre özel kodlar yazmak gerekebilir. Her ihtimali göz önüne almak gerekir hata oluşmaması için. Mesela bu kodda 2 den fazla soru olsa ve kişi 2. soruyu cevaplamadan gönderse hata oluşur. Kendinizi geliştirmenin en iyi yolu hatalar almak ve bunları çözüme kavuşturmaktır bence :)