그래서 다음과 같은 방식으로 작동하는 프로그램을 만들었습니다.역 배열 함수
사용자가 배열의 크기를 결정합니다.
그런 다음 x 선택된 정수로 사용자가 배열을 채 웁니다. 그들이 배열 5를 크게 만들도록 선택하면 배열에 5 개의 숫자를 채우도록 요청됩니다. 그러나 나는이 작업을 수행 할 수있는 방법에 조금 갇혀있다. 일단이 비트가 완료되면 할당 된 값으로 코드를 하드 코딩하고 함수 역량을 프로그램으로 역변환하여 테스트했다.
여기 내 코드입니다. 내가 배열의 각 인덱스에 정수를 반복 입력 루프 또는 무언가에 대한을 사용할 필요가 있다고 생각합니까
#include <iostream>
using std::cout;
using std::endl;
using std::cin;
void reverse(int [], int);
void printarray(int [], int);
void printarray(int arr[], int count)
{
for(int i = 0; i < count; ++i)
cout<<arr[i]<<' ';
cout<<'\n';
}
void reverse(int arr[], int count)
{
int temp;
for (int i = 0; i < count/2; ++i)
{
temp = arr[i];
arr[i] = arr[count-i-1];
arr[count-i-1] = temp;
}
}
int main()
{
int x;
cout << "how big is this thing " << endl;
cin >>
const int SIZE = x;
int arr [SIZE] = {., ., ., ., ., ., ., . , ., .};
cout<<"Before reverse\n";
printarray(arr, SIZE);
reverse(arr, SIZE);
cout<<"After reverse\n";
printarray(arr, SIZE);
return 0;
}
미안 그것은 너무 오래 내가 배열을 수행 한 이후되었습니다. 이 문제에 대한 도움을 주시면 감사하겠습니다. M.M에서 언급 한 바와 같이
가'SIZE'가 배열에 대해 컴파일 타임에해야 다음 시도 할 수 있습니다. 사용자가 배열의 크기를 변경할 수 있다면 고정 된 최대 크기를 사용해야하거나 배열 대신'vector'와 같은 다른 컨테이너를 사용해야합니다. –