함수를 다 쓴건 아닌데 우선
int k_min_of(const int v[], int n, int k)
{
int i, temp;
for (i = 0; i < n; i++)
{
if (ary[i] > ary[i + 1])
{
temp = ary[i];
ary[i] = ary[i + 1];
ary[i + 1] = temp;
}
}
}
이렇게 했고 main함수에서 three_small = k_min_of(const int v[], int n, int k); 이거를 하면 const, int 부분에서 자꾸 식이 필요하다고 오류뜨는데 뭐가 잘못된거임??
함수에서 첫번째 ary에서도 오류뜨는데 뭐가 문제임???
ary 를 v로 바꿔야되는거 아니냐>
그리고 배열 내용을 바꾸는건데 const로 하면 안되지
근데 문제에서는 int k_min_of(const int v[], int n, int k) 이렇게 하라고 나와있어서 저렇게 했는데 const로 하면 안됨??
ary를 전부 v로 바꿨는데 식이 수정할 수 있는 lvalue여야 합니다.이렇게 오류 뜸...
뭐지 일단 그 오류는 const로 매개변수 선언했으니까 당연히 수정할 수 없는거고 문제가 왜 저렇지
문제가 크기가 n(<= 100)개인 int형 배열 v의 원소 중 k번째 작은 수를 찾아라. 이 프로그램은 소스코드에서 다음의 함수를 작성하여 호출해야 한다 (추후, 소스코드 검사를 통해 확인 예정) 이거임 그리고 밑에 int k_min_of(const int v[], int n, int k) 이게 써있고 입력은 첫 번째 줄은 배열의 크기 n와 k가 주어진다. 두번째 줄은 배열의 n개의 데이터가 주어진다. (중복데이터가 존재) 요건데 왜 오류가 뜨는지 모르겠음..