방프리

20.02.05 C# 프로그래밍 입문 Chapter 6 연습문제 본문

C#/C# 프로그래밍 입문

20.02.05 C# 프로그래밍 입문 Chapter 6 연습문제

방프리 2020. 2. 5. 22:37

[연습문제]

1. 배열은 어떤 때 사용하는 게 유용한가?

  • 같은 형식의 데이터를 그룹화해서 사용하거나, 편집할 때 유용하게 사용된다.

2. 배열을 초기화할 때 스택과 힙에 각각 저장되는 정보는 무엇인가?

  • 스택에는 배열의 이름명이 저장되고 힙에는 배열의 실제 요소가 저장된다.

3. long[] LongArray = {1,2,3,4} 배열이 있다. for문을 사용해서 요소의 모든 값을 1씩 증가시키고, 다시 출력하시오.

4. int[] myArray = new int[5] 배열을 선언했다. 여기서 각 요소들을 참조하거나 편집할 때, 왜 myArray[5]는 사용할 수 없는 것인지 이유를 적으시오.

  • 배열의 인덱스가 0부터 시작하기 때문이다.

5. 배열을 복사할 때 원래 배열의 값을 바꾸면 복사된 배열의 값도 바뀐다. 이유는 무엇인가?

  • 특정 배열을 복사해서 생성되는 배열은 원래의 배열과 동일한 메모리 공간을 사용하기 때문이다.

[심화연습문제]

1. 다음 문장은 모두 문법적으로 틀린 명령문이다. 어느 부분이 틀렸는지 지적하고 올바르게 고치시오.

  • ① : 배열을 초기화 한 상태에서 대입을 해야한다.
  • ② : 메모리조차 할당받지 않은 상태에서 인덱스에 접근함
  • ③ : 인덱스 범위를 벗어난 인덱스에 접근하고 있다.
  • ④ : 같은 이름의 변수를 선언하고 있다.

 

2. int [] TestArray = {0, 5, 3, 1, 2} 배열이 있다고 가정하고 다음 조건을 모두 만족하는 클래스를 작성하시오.

  • 이 배열을 작은 순으로 정렬해서 다시 저장한 후에 출력하시오.
  • 이 배열을 CopyArray라는 이름의 배열로 복제하시오.
  • CopyArray에서 1이라는 값이 요소의 몇 번째 값인지 출력하시오.
  • 이 배열의 세 번째, 네 번째 요소의 값을 Clear() 메소드를 사용해서 0으로 초기화한 후 전체 배열의 내용을 출력하시오.

3. 배열을 구조체와 비교해서 같은 점과 다른 점을 각각 설명하시오.

  • 배열과 구조체는 데이터의 집합이라는 점에서 공통점이 있지만 배열의 경우엔 같은 타입의 데이터의 집합이라고 하면 구조체는 다양한 데이터의 집합체라고 할 수 있다.
Comments