C에서 문제를 해결하기 위해 노력하고 있습니다. 그것에 대해 빠른 질문이 있습니다. 문제는 다음과 같습니다. 정수 정렬 된 배열을 받았습니다 (예 : a[i] = { 1, 2, 3, 3, 3 }
). 자, 주어진 정수를 검색하고, 배열에서 첫 번째 발생 위치와 그 정수의 발생 횟수를 반환하는 프로그램을 실행해야합니다.C에서 정렬 된 배열 검색
따라서 3
을 검색하면 a[2]
에 첫 번째 어커런스가 표시되고 3
은 세 번 있습니다. 첫 번째 부분은 첫 번째 항목을 찾으려면 문자열 헤더 파일의 strcspn
을 사용하면됩니다. 그러나 두 번째 부분에는 인스턴스 수를 세는 inbuilt 함수가 있습니까?
실제로 카운터 변수를 증가시킴으로써 "맨손"으로이 작업을 수행 할 수 있습니다. 그러나 교수님은 리턴 타입이 size_t 여야한다는 힌트를 주셨고, 일부 내장 함수를 사용할 수 있다고 제안했습니다. 어떤 도움을 주시면 감사하겠습니다.
감사합니다, 알렉산더
"숙제"태그를이 질문에 추가 하시겠습니까? – GreenMatt
'size_t '타입은 라이브러리 함수가 사용되어야한다고 생각하지 않습니다. 'size_t'는 임의의 크기의 배열에서 몇 가지 기준을 충족시키는 요소의 수를 포함하여 사물 길이를 반환 할 때 항상 사용되어야합니다. – Trent
'strcspn'가'int' 배열을 어떻게 도와 주나요? 'size_t' 때문에 헤더 파일을 샅샅이 뒤져 보았을까요? 'size_t'는 C에서 부정적 일 수없는 정수형입니다. 교수님이'int' 대신'size_t'를 제안한 이유입니다. 귀하의 수는 0보다 클 수 있습니다. –