원하는 만큼 배열을 생성해서 배열값들의 합을 구하는 프로그램인듯합니다. (이해한 내용)
일단 메인 함수에서 new를 이용해서 scanf에서 입력받은만큼 배열을 생성합니다.
ex)
int iInputNum = 0;
int* pArray;
scanf( "%d", &iInputNum );
pArray = new int[iInputNum];
이후에 pArray는 iInputNum을 제한점으로 사용하여 직접접근합니다.
pArray[10] = 10; 등등..
프로그램 종료할때 사용한 메모리는 해제해 주시면됩니다.
ex)
delete [] pArray;
초보 ㅠㅠ 님이 쓰신 글 :
: #include <stdio.h>
:
: int func(int p[])
: {
: int control, sum=0, arr[10], i;
:
: for (control = 1; control <= 10; control++){
: sum = sum + control;
: arr[control-1] = sum;
: }
: for (i = 0; i <= 9; i++)
: p[i] = arr[i];
: return p[10];
: }
:
: void main()
: {
: int cnt, var[10], i;
: func(var);
: for(i=0;i<=9;i++)
: {
: printf("%d\n", var[i]);
: }
: getch();
: }
:
:
:
: 위는 1부터 10까지의 합을 출력하는 프로그램인데요.
:
: func()함수에서 main()함수로 배열을 넘겨받아 출력하는 형식입니다. 꼭 이런식으로 작성해야 됩니다.
:
: 그런데 제가 하고 싶은것은 꼭 10까지의 합이 아니라 내가 원하는 수만큼의 합을 발생하려고 합니다.
:
: 그러려면 main()에서 scanf()함수로 발생시키려는 수를 입력받고 이것을 func()함수로 넘겨준다음, 다시 func()함수에서 합의 배열을 main()함수로 넘겨받아 출력하려고 합니다. (꼭 그렇게해야됩니다.)
:
:
:
: 위소스에서 어떻게 추가하면 될까요..?
|