배열을 함수에 전달할때.
글쓴이: min2to / 작성시간: 수, 2006/02/01 - 3:51오전
너무 길어서 후반 부분만 적겟습니다 죄송합니다..
int largest(int x[], int y) //중략에 int x[]10개배열선언,y 10 선언 하였음 { int count , biggest = -12000; for ( count = 0; count < y; count++) { if (x[count]> biggest) biggest = x[count]; <-이부분의 개념을 모르겟습니다. } return biggest; }
저부분의 개념 좀 알려주셨으면 합니다. 배열을 저렇게 주라고(?) 지정해노
니까 감이 전혀않와서 감사합니다
올 새해에도 다들 복 많이 받으십시오.
Forums:
biggest 변수에 x의 count+1 번째 원소를 대입하라는 뜻이군요
biggest 변수에 x의 count+1 번째 원소를 대입하라는 뜻이군요.
Re: 배열을 함수에 전달할때.
배열하고는 그닥 상관 없어 보이네요 :)
코드를 조금 정리해 드릴게요.
P.s : 앗, 실수를;;;
Re: 배열을 함수에 전달할때.
감사합니다 흐흐 복받으실꺼예여~
모르는건 물어보라구 엄마 아빠가 알려주셧습니다
고수님,선배님들 도와주십쇼 독학하는 학생입니다
Re: 배열을 함수에 전달할때.
여기에는 가정이 있는 것입니다.
가정 : 배열에 들어 있는 값이 -12000이라는 값보다는 적어도 1개 이상이 크다.
이런 식으로 코딩하는 것은 좀 ... 합니다.
보다 정확히 하겠다면, 정수의(배열이 정수인경우) 최소값을 대입해야 합니다.
만일 정수가 32비트라면, -(2^31) = -2147483648 값을 대입하는 것이 보다 정확합니다. 반면, 최소값을 구하는 경우라면, 대략 int smallist = 2^31-1 =2147483647을 하는게 맞겠습니다만, 이 둘 다 별로 타당하지 못하며, 처음 배열의 요소를 최소/최대로 간주하고 이 값을 다른 배열요소로 비교하는게 더 낫겠습니다. int biggest = array[0]; 이렇게 하고, 두번째 배열요소부터 비교해 가면되겠지요.
Re: 배열을 함수에 전달할때.
정수의 최소값 대입 방법에서 조금 더 이식성을 유지하려면
limits.h 헤더 인클루드하고 int biggest=INT_MIN 하는 것도 좋지요 :)
댓글 달기