#include <stdio.h>
#define STUDENTS 5
int main()
{
int i,max,min,sum = 0;
int maxindex = 0, minindex = 0;
int score[STUDENTS];
double avg;
for (i = 0; i < STUDENTS; i++) {
printf("성적 입력:");
scanf("%d", &score[i]);
if (i == 0)min = max = score[i];
else {
if (score[i] > max) {
maxindex = i;
max = score[i];
}
else if
(score[i] < min) {
minindex = i;
min = score[i];
}
}
}
printf("%d 번째 학생이 %d 점으로 꼴찌입니다.\n", minindex+1, min);
printf("%d 번째 학생이 %d 점으로 1등입니다.\n", maxindex+1, max);
}
이게 어떤 소스냐면 5명의 성적을 입력받고 최솟값,최댓값을내서 *번쨰의 학생이 *점으로 꼴등 or 1등 인지 보여주고싶은 소스인데
if (i == 0)min = max = score[i]; 이걸 왜 설정해야하는지 모르겟다.. 그리고 이걸 왜 if else로 처리했는지..
첫번째는 비교할 이전값이 없으니 그냥 입력된 값을 설정하기 위해 그렇게 한것임.
과제 도움받은건데 내 머리로 저 식을 아무리 생각해봐도 나오질 않는다 ㅠ 그냥 내야겟다,,
시작값이 0이라고 가정하고 입력을 1 2 3 4 5 입력했어 최소값이 1이 나와야지 근데 0나올거 아니니 그러니깐 첫번째 값을 시작값으로 하는거야