배열의 최대 값과 최소값을 찾으려고합니다. 쉼표로 구분 된 숫자의 문자열 인 'numArray'가 있습니다 (예 : 3,5,1,6). 저는 토큰 화기를 사용하여 개별 int로 분리하고 별도의 배열에 저장합니다. 나는 그 다음 그들을 정렬하고 0 번째 요소를 인쇄하지만, 'nums [0]'은 3,5,1,6에서와 같이 정확한 배열로 전체 배열을 인쇄합니다. 정렬 부분에 주석을 달았지만 여전히 전체 배열을 가지고 있습니다. 내가 도대체 뭘 잘못하고있는 겁니까? 저는 C++의 초보자입니다.정렬 된 정수 배열 요소 인쇄
CString str = numArray;
int i=0;
int nums[50];
int nTokenPos = 0;
CString strToken = str.Tokenize(_T(","), nTokenPos);
while (!strToken.IsEmpty())
{
int x = atoi(strToken);
nums[i]=x;
strToken = str.Tokenize(_T(","), nTokenPos);
i++;
}
std::sort(nums,nums+50);
int min = nums[0];
CString someStr;
someStr.Format(_T("The minimum number is: %d"), min);
minMaxAvg.SetWindowTextA(str);
'str' 대신'someStr'을 전달하십시오. – deepmax
번호가있는 부분뿐만 아니라 전체 배열을 정렬합니다. 배열은 초기화되지 않았고 쓰레기가 들어 있음을 기억하십시오! std :: sort (nums, nums + i); – xMRi