C ++에서 배열의 평균을 얻기 위해 포인터를 사용하는 방법은 무엇입니까?

알렉스 G

저는 프로그래밍이 처음이고 배열, 포인터 및 함수에 여전히 문제가 있습니다. 이 문제가 무엇이고 어떻게 고칠 수 있는지 알고 싶습니다. 특히 포인터가 함수에서 작동하지 않는 이유입니다. 다음은 내가 작성하려는 프로그램입니다. 사용자가 정의한 수의 테스트 점수를 저장할 수있을만큼 큰 배열에 대한 포인터를 동적으로 생성하는 프로그램을 작성합니다. 모든 점수가 입력되면 (주 함수에서) 평균 점수에 대해 DOUBLE을 반환하는 함수로 배열을 전달해야합니다. 사용자 출력에서 ​​평균 점수는 소수점 이하 두 자리로 형식화되어야합니다. 포인터 표기법을 사용하십시오. 배열 표기법을 사용하지 마십시오.

#include <iostream>
#include <iomanip>
#include <memory>
using namespace std;

double getAverage(int, int);

int main()
{ 
    int size = 0;
    cout << "How many scores will you enter? ";
cin >> size;

unique_ptr<int[]> ptr(new int[size]);


cout << endl;
int count = 0;

//gets the test scores

for (count = 0; count < size; count++)
{
    cout << "Enter the score for test " << (count + 1) << ": ";
    cin >> ptr[count];
    cout << endl;
}
//display test scores
cout << "The scores you entered are:";
for (count = 0; count < size; count++)
    cout << " " << ptr[count];
cout << endl;

double avg;
avg = getAverage(ptr, size);
cout << setprecision(2) << fixed << showpoint << endl;

cout << "The average is " << avg << endl;

return 0;
}

double getAverage(int *ptr, int size)
{
double average1;
double total = 0;
for (int count = 0; count < size; count++)
{
    total = total + *(ptr + count);
}
average1 = total / size;

return average1;
}
Shiv Kumar

우선 함수 getAverage()에는 정의한 것과 다른 프로토 타입이 있습니다. 그리고 둘째로 당신은 통과하려고 std::unique_ptr<int []>대신 예상하는 함수에 객체를 int*. 그러나 암시 적으로 변환 할 수없는 std::unique_ptr<int []>다른 유형 int*입니다. 그래서 int *사용 std::unique_ptr::get기능 을 전달 합니다. 처럼

#include <iostream>
#include <iomanip>
#include <memory>
using namespace std;

double getAverage(int *, int);

int main()
{ 
    int size = 0;
    cout << "How many scores will you enter? ";
cin >> size;

unique_ptr<int[]> ptr(new int[size]);


cout << endl;
int count = 0;

//gets the test scores

for (count = 0; count < size; count++)
{
    cout << "Enter the score for test " << (count + 1) << ": ";
    cin >> ptr[count];
    cout << endl;
}
//display test scores
cout << "The scores you entered are:";
for (count = 0; count < size; count++)
    cout << " " << ptr[count];
cout << endl;

double avg;
avg = getAverage(ptr.get(), size);
cout << setprecision(2) << fixed << showpoint << endl;

cout << "The average is " << avg << endl;

return 0;
}

double getAverage(int *ptr, int size)
{
double average1;
double total = 0;
for (int count = 0; count < size; count++)
{
    total = total + *(ptr + count);
}
average1 = total / size;

return average1;
} 

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

평균을 계산하기 위해 배열에서 재귀를 사용하는 방법은 무엇입니까?

분류에서Dev

NumPy 배열을 분할하기 위해`numpy.digitize`를 사용한 후 각 bin의 평균을 계산하는 방법은 무엇입니까?

분류에서Dev

특정 열 값을 얻기 위해 MS Excel에서 IF를 사용하는 방법은 무엇입니까?

분류에서Dev

C에서 char 배열을 정렬하기 위해 Counting Sort를 구현하는 방법은 무엇입니까?

분류에서Dev

Bash의 배열에서 명령을 찾기 위해 인수를 생성하는 방법은 무엇입니까?

분류에서Dev

C ++ 문자 배열의 길이를 찾기 위해 포인터를 만들고 사용하는 방법은 무엇입니까?

분류에서Dev

malloc을 사용하여 c의 포인터에 대한 메모리 주소를 얻은 다음 해당 주소에 char 배열을 할당하는 방법은 무엇입니까?

분류에서Dev

배열 항목의 유효성을 검사하기 위해 json 스키마에서 다른 경우 논리를 사용하는 방법은 무엇입니까?

분류에서Dev

다른 데이터 프레임에서 특정 열의 평균을 얻는 방법은 무엇입니까?

분류에서Dev

이미지를 선택하기 위해 배열에서 선택하기 위해 임의의 숫자 목록을 적용하는 방법은 무엇입니까?

분류에서Dev

10 진수 값을 얻기 위해 C #에서 44/5를 변환하는 방법은 무엇입니까?

분류에서Dev

10 진수 값을 얻기 위해 C #에서 44/5를 변환하는 방법은 무엇입니까?

분류에서Dev

평균을 얻기 위해 varchar를 int로 변환하는 방법은 무엇입니까?

분류에서Dev

정렬되지 않은 메모리 액세스를 피하기 위해 C에서 포인터 캐스팅을 해결하는 방법은 무엇입니까?

분류에서Dev

Java에서 1 개의 기본 배열 / 문자열을 생성하기 위해 배열의 인덱스를 병합하는 방법은 무엇입니까?

분류에서Dev

특정 인덱스의 값을 얻기 위해 JSON에서 배열을 정렬하는 방법은 무엇입니까?

분류에서Dev

항목 당 모든 행 항목에 대해 scala-spark에서 배열 유형 열의 평균을 얻는 방법은 무엇입니까?

분류에서Dev

joohny five를 사용하기 위해 html의 버튼에서 사용하기 위해 nodejs의 기능을 사용하는 방법은 무엇입니까?

분류에서Dev

R에서 기본 값 (평균, SD, SE 등)을 계산하기 위해 데이터 프레임을 다시 포맷하는 방법은 무엇입니까?

분류에서Dev

C에서 JSON 호환 형식을 얻기 위해 문자열에서 caracters를 올바르게 이스케이프하는 방법은 무엇입니까?

분류에서Dev

포인터에 대해 균일 한 초기화를 사용하는 방법은 무엇입니까?

분류에서Dev

찾기를 사용하여 해시 배열에서 해시를 얻는 방법은 무엇입니까?

분류에서Dev

C ++에서 배열을 포인터 관점으로 이해하는 방법은 무엇입니까?

분류에서Dev

.select2 () ajax 호출에서 select2에서 사용하기 위해 <select>의 데이터 속성을 얻는 방법은 무엇입니까?

분류에서Dev

R의 csv 행 범위에서 직접 평균을 얻는 방법은 무엇입니까?

분류에서Dev

백분율 기호를 제거하고 r을 사용하여 열에서 일부 값의 평균을 찾는 방법은 무엇입니까?

분류에서Dev

배열에서 처음 두 숫자의 평균을 얻는 방법은 무엇입니까?

분류에서Dev

scip를 C에 연결하기 위해 makefile을 사용하고 빌드하는 방법은 무엇입니까?

분류에서Dev

조건에서 값을 더하기 위해 배열 수식을 사용하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    평균을 계산하기 위해 배열에서 재귀를 사용하는 방법은 무엇입니까?

  2. 2

    NumPy 배열을 분할하기 위해`numpy.digitize`를 사용한 후 각 bin의 평균을 계산하는 방법은 무엇입니까?

  3. 3

    특정 열 값을 얻기 위해 MS Excel에서 IF를 사용하는 방법은 무엇입니까?

  4. 4

    C에서 char 배열을 정렬하기 위해 Counting Sort를 구현하는 방법은 무엇입니까?

  5. 5

    Bash의 배열에서 명령을 찾기 위해 인수를 생성하는 방법은 무엇입니까?

  6. 6

    C ++ 문자 배열의 길이를 찾기 위해 포인터를 만들고 사용하는 방법은 무엇입니까?

  7. 7

    malloc을 사용하여 c의 포인터에 대한 메모리 주소를 얻은 다음 해당 주소에 char 배열을 할당하는 방법은 무엇입니까?

  8. 8

    배열 항목의 유효성을 검사하기 위해 json 스키마에서 다른 경우 논리를 사용하는 방법은 무엇입니까?

  9. 9

    다른 데이터 프레임에서 특정 열의 평균을 얻는 방법은 무엇입니까?

  10. 10

    이미지를 선택하기 위해 배열에서 선택하기 위해 임의의 숫자 목록을 적용하는 방법은 무엇입니까?

  11. 11

    10 진수 값을 얻기 위해 C #에서 44/5를 변환하는 방법은 무엇입니까?

  12. 12

    10 진수 값을 얻기 위해 C #에서 44/5를 변환하는 방법은 무엇입니까?

  13. 13

    평균을 얻기 위해 varchar를 int로 변환하는 방법은 무엇입니까?

  14. 14

    정렬되지 않은 메모리 액세스를 피하기 위해 C에서 포인터 캐스팅을 해결하는 방법은 무엇입니까?

  15. 15

    Java에서 1 개의 기본 배열 / 문자열을 생성하기 위해 배열의 인덱스를 병합하는 방법은 무엇입니까?

  16. 16

    특정 인덱스의 값을 얻기 위해 JSON에서 배열을 정렬하는 방법은 무엇입니까?

  17. 17

    항목 당 모든 행 항목에 대해 scala-spark에서 배열 유형 열의 평균을 얻는 방법은 무엇입니까?

  18. 18

    joohny five를 사용하기 위해 html의 버튼에서 사용하기 위해 nodejs의 기능을 사용하는 방법은 무엇입니까?

  19. 19

    R에서 기본 값 (평균, SD, SE 등)을 계산하기 위해 데이터 프레임을 다시 포맷하는 방법은 무엇입니까?

  20. 20

    C에서 JSON 호환 형식을 얻기 위해 문자열에서 caracters를 올바르게 이스케이프하는 방법은 무엇입니까?

  21. 21

    포인터에 대해 균일 한 초기화를 사용하는 방법은 무엇입니까?

  22. 22

    찾기를 사용하여 해시 배열에서 해시를 얻는 방법은 무엇입니까?

  23. 23

    C ++에서 배열을 포인터 관점으로 이해하는 방법은 무엇입니까?

  24. 24

    .select2 () ajax 호출에서 select2에서 사용하기 위해 <select>의 데이터 속성을 얻는 방법은 무엇입니까?

  25. 25

    R의 csv 행 범위에서 직접 평균을 얻는 방법은 무엇입니까?

  26. 26

    백분율 기호를 제거하고 r을 사용하여 열에서 일부 값의 평균을 찾는 방법은 무엇입니까?

  27. 27

    배열에서 처음 두 숫자의 평균을 얻는 방법은 무엇입니까?

  28. 28

    scip를 C에 연결하기 위해 makefile을 사용하고 빌드하는 방법은 무엇입니까?

  29. 29

    조건에서 값을 더하기 위해 배열 수식을 사용하는 방법은 무엇입니까?

뜨겁다태그

보관