int x = (A[3] + 5) * A[1] / / 값 A[3] 및 A[1] 읽기 A[0] = x + 6 // A[0]에 새 값 쓰기
int i = 1; int[] A = 새로운 int[5]; //5개 요소의 배열 생성 A[0] = 23; // 배열의 5개 요소 각각에 대해(인덱스는 0에서 4까지) A[1] = 12; // 특정 값 쓰기 A[2] = 7; A[3] = 43; A[4] = 51; A[2] = A[i] + 2*A[i-1] + A[2*i]; // 인덱스가 2인 요소의 값을 표현식의 결과로 변경 // i=1이므로 변수 i의 값을 우리가 얻는 표현식으로 대체합니다. // 다음 식 A[2] = A[1] + 2*A[0] + A[2]; Console.Write((A[2] + A[4])); 스팬>코드>스팬>프리> 이 프로그램을 실행한 결과, 인덱스 2와 인덱스 4는 화면에 116과 동일하게 나타납니다. 예제에서 볼 수 있듯이 배열의 모든 요소에 액세스할 수 있습니다. 또한 다양한 공식을 사용하여 필요한 요소 번호를 계산합니다(예: 프로그램 A[i-1] 또는 A[2*i]에서와 같이 이러한 경우, 요소 인덱스가 계산되고 i)의 값에 따라 달라집니다. 예제 프로그램을 분석해 봅시다. <예비> int N = 5; int[] A = 새로운 int[N]; 정수 x = 1; A[x + 4] = A[x] + A[2 * (x + 1)]; // x를 식과 계산에 대입한 후 // 다음 줄을 얻습니다. A[5] = A[1] + A[4] // A[5] 그러한 요소가 존재하지 않습니다. // 오류 - 범위를 벗어난 배열 스팬>코드>스팬>프리> 배열은 5개의 요소로 선언됩니다. 4. 6번째 줄에 있는 프로그램이 존재하지 않는 요소인 A[5]를 참조하는 것을 볼 수 있습니다. 프로그램이 배열의 범위를 넘어선 것으로 나타났습니다. 배열 오버런은 배열에 존재하지 않는 인덱스의 요소에 대한 액세스입니다. 이러한 경우 프로그램은 일반적으로 런타임 오류와 함께 충돌합니다.
A[i-1]
A[2*i]
int N = 5; int[] A = 새로운 int[N]; 정수 x = 1; A[x + 4] = A[x] + A[2 * (x + 1)]; // x를 식과 계산에 대입한 후 // 다음 줄을 얻습니다. A[5] = A[1] + A[4] // A[5] 그러한 요소가 존재하지 않습니다. // 오류 - 범위를 벗어난 배열 스팬>코드>스팬>프리> 배열은 5개의 요소로 선언됩니다. 4. 6번째 줄에 있는 프로그램이 존재하지 않는 요소인 A[5]를 참조하는 것을 볼 수 있습니다. 프로그램이 배열의 범위를 넘어선 것으로 나타났습니다. 배열 오버런은 배열에 존재하지 않는 인덱스의 요소에 대한 액세스입니다. 이러한 경우 프로그램은 일반적으로 런타임 오류와 함께 충돌합니다.
A[5]
A[1] = 46
1000 ms 256 Mb Rules for program design and list of errors in automatic problem checking