עזרה ב C 
אני אמור לקלוט מערך ואז לבדוק מי הוא המספר הגדול ביותר, השני בגודלו והשלישי בגודלו.
בקטע הראשון קלטתי שלושה מספרים לאיברים הראשונים, כדי לא להציב 0. אח"כ עברתי על כל המערך מההתחלה והצבתי תנאים, שככל הנראה לא פועלים. אם אני מכניס את המספרים 1,2,3,4,5,6,7,8,9,10(בסדר הזה) הפלט המתקבל הוא 10,2,3. איפה אני שוגה? תוכלו להציע לי תנאים אחרים להציב? תודה
אני אמור לקלוט מערך ואז לבדוק מי הוא המספר הגדול ביותר, השני בגודלו והשלישי בגודלו.
#include <Stdio.h> #define n 10 void main(void) { int moo[n]; int i,lrg,slrg,tlrg; printf("Enter a number\n"); scanf("%d",&moo[0]); lrg=moo[0]; printf("Enter a number\n"); scanf("%d",&moo[1]); slrg=moo[1]; printf("Enter a number\n"); scanf("%d",&moo[2]); tlrg=moo[2]; for(i=3;i<=n-1;i++){ printf("Enter a number\n"); scanf("%d",&moo); }//for for(i=0;i<=n-1;i++){ if((moo > lrg) && (moo > slrg) && (moo > tlrg)) lrg=moo; if((moo < lrg) && (moo > slrg) && (moo > tlrg)) slrg=moo; if((moo < lrg) && (moo < slrg) && (moo > tlrg)) tlrg=moo; }//for printf("\n%d\n%d\n%d",lrg,slrg,tlrg); }//main
בקטע הראשון קלטתי שלושה מספרים לאיברים הראשונים, כדי לא להציב 0. אח"כ עברתי על כל המערך מההתחלה והצבתי תנאים, שככל הנראה לא פועלים. אם אני מכניס את המספרים 1,2,3,4,5,6,7,8,9,10(בסדר הזה) הפלט המתקבל הוא 10,2,3. איפה אני שוגה? תוכלו להציע לי תנאים אחרים להציב? תודה