1. C언어에서 배열에 대하여 다음 중 맞는 것은?
답 : (2) 배열의 이름은 포인터와 같은 역할을 한다.
오답노트
(1) 3차원 그 이상의 배열도 가능하다.
(3) 배열의 인덱스는 0에서 시작한다.
(4) 선언한 다음, 실행 도중에 크기를 변경하는 것은 불가능하다.
2. 다음 중 배열에 관한 문장 중 문법에 맞지 않는 것은?
답 : (4) char *pb[30]="I am a student";
해당 배열은 2차원 배열인데, 1차원 배열 초기화 방식을 사용하여 문제가 생긴 것.
3. float a[100]으로 선언되 배열의 시작 주소를 1000번지라고 할 때, 배열의 10번째 요소의 주소는 몇 번지인가?
답 : (4) 1040번지
1000+4*10
4. 구조체에 관한 내용 중 틀린 것은?
답 : (2) 구조체 변수에 대하여 비교 연산이나 산술 연산을 할 수 있다.
구조체 자체에 대해 비교 연산이나 산술 연산을 할 수 없다. 구조체의 멤버 간 비교, 산술 연산을 사용해야 한다.
5. int i=10; int *p; p=&i; *p=8;의 문장이 수행되면 i 값은 얼마인가?
답 : (4) 8
6. int i=10; int *p; p=&i; (*p)--;의 문장이 수행되면 i 값은 얼마인가?
답 : (3) 9
7. int a[10]; int *p; p=a; *p++=5;의 문장이 수행되면 변경되는 배열의 요소는?
답 : (1) a[0]
8. int a[10]; int *p; p=a; *++p=5;의 문장이 수행되면 변경되는 배열의 요소는?
답 : (2) a[1]
9. int a[10]; int *p; p=a; (*p)++의 문장이 수행되면 변경되는 배열의 요소는?
답 : (1) a[0]
10. int a[10]; int *p; p=a; ++*(p+1);의 문장이 수행되면 변경되는 배열의 요소는?
답 : (2) a[1]
11. int a[10]; int *p; p=a; (*(p+1))++;의 문장이 수행되면 변경되는 배열의 요소는?
답 : (2) a[1]
12. struct { int fa; int fb; } a; *p=&a;라고 할 때 fa를 수정하는 문장으로 맞는 것을 모두 선택하여라.
답 : (3)(*p).fa=10; , (4)p[0].fa=10;
13. 다음과 같은 문장을 수행하고 난 뒤의 a[0]의 값은?
void sub(int b[])
{ b[0] = 0; }
void main()
{ int a[]={1,2,3,4,5,6}; sub(a); }
답 : (1)0
14. 다음과 같은 문장을 수행하고 난 뒤의 a.field1의 값은?
struct test { int field1; };
void sub(struct test b)
{ b.field1 = 1; }
void main()
{ struct test a={ 0 }; sub(a); }
답 : (2)0
15. 다음과 같은 문장을 수행하고 난 뒤의 a.filed1의 값은?
struct test { int field1; };
void sub(struct test *b)
{ b->field1 = 1; }
void main()
{ struct test a={ 0 }; sub(&a); }
'Computer Science > Data Structure, Algorithm' 카테고리의 다른 글
해시테이블(Hash Table)과 체이닝(Chaining)에 대한 간략한 정리 (0) | 2018.09.30 |
---|---|
DataStructure] C언어로 쉽게 풀어쓴 자료구조 3장 - 2 (0) | 2018.05.23 |
두근두근 자료구조 2장 프로그래밍 프로젝트 1번 (1) | 2018.04.12 |
두근두근 자료구조 2장 연습문제 (0) | 2018.04.11 |
Algorithm] 플로이드-워셜(Floyd-Warshall) 알고리즘 (4) | 2018.03.10 |