목차
자료구조
Report#1
-chapter 3-
01 ~ 47 (홀수 문제 풀이)
Report#1
-chapter 3-
01 ~ 47 (홀수 문제 풀이)
본문내용
p이다
37. 2차원 C배열 intA[2][3];으로 선언했을 때, A[1][2]의 주소를 A를 사용하여 표시하라.
=> A가 가르키고 있는 값은 A[0][0], A[1][2]값은 A[0][0]으로 부터 5번째 값이므로 A+5
39. 그림[3-19]를 구조체 배열로 선언하라.
=> typedef struct Date{
char name[10];
char sex;
int age;
char tel[15];
}DateType;
41. 개에 관한 다음 필드 정보를 저장하기 위한 구조체를 선언하라.
가. 이름을 저장하기 위한 문자열필드 (20 캐릭터)
나. 암수(Female,Male)구분을 위해 ‘F’또는 ‘M’을 저장하기 위한 필드
다. 개의 품종을 저장하기 위한 문자열 필드 (20 캐릭터)
라. 나이를 저장하기 위한 정수 필드
=>typedef struct Dog{
char name[20];
char sex;
char origin[20];
int age;
} DogType;
43. x = 2, y = 10이 전달되었을 때, 다음 프로그램의 출력을 써라.
void InOrder (int x, int& y){
if(y > x){
++x;
--y;
cout << x << " "<< y <
InOrder(x, y);
cout << x << " "<< y <
}
}
=> InOrder 함수는 x의 값을 복사하고 y의 주소값을 넘겼다.
x : callbyvalue
y : callbyaddress
45. 다음 프로그램을 보고 물음에 답하라.
void main (){
int x = 3; int *p;
CallByValue(x); ①
Printf ("%d\n",x); ②
p = CallByReference( ); ③
}
void CallByValue(int x){
x = 3 * x;
}
가. ②번 명령문에 의해 출력되는 값은 얼마 인가?
=> x의 값 3 출력
나. ②는 값 호출의 예다. 이를 참조 호출로 만들기 위한 ③번 명령문의 괄호 안을 완성 하라.
=> x의 주소 값을 받아야 하기 때문에 &x
다. ③번에 의해 호출되는 함수를 작성하라. 단, 함수명은 CallByReference며, 함수 는 전달된 값을 제곱하되 호출 함수에게는 포인터를 되돌려야 한다.
=>int* CallByReference(int* x){
*x = (*x) * (*x);
return x;
}
47. strcpy(string1,string2) 함수는 string2 변수의 문자열을 string1변수로 복사하는 함 수다. 이 경우, string1, string2는 배열명이면서 동시에 배열의 첫 요소를 가리키는 포 인터로 볼 수 있다. 완전한 strcpy(string1,string2) 함수를 작성하라.
=>char * strcpy(string1, string2){
int i = 0;
while (string2[i] != NULL){
string1[i] = string2[i];
i ++;
}
string1[i] = NULL;
return string1;
}
37. 2차원 C배열 intA[2][3];으로 선언했을 때, A[1][2]의 주소를 A를 사용하여 표시하라.
=> A가 가르키고 있는 값은 A[0][0], A[1][2]값은 A[0][0]으로 부터 5번째 값이므로 A+5
39. 그림[3-19]를 구조체 배열로 선언하라.
=> typedef struct Date{
char name[10];
char sex;
int age;
char tel[15];
}DateType;
41. 개에 관한 다음 필드 정보를 저장하기 위한 구조체를 선언하라.
가. 이름을 저장하기 위한 문자열필드 (20 캐릭터)
나. 암수(Female,Male)구분을 위해 ‘F’또는 ‘M’을 저장하기 위한 필드
다. 개의 품종을 저장하기 위한 문자열 필드 (20 캐릭터)
라. 나이를 저장하기 위한 정수 필드
=>typedef struct Dog{
char name[20];
char sex;
char origin[20];
int age;
} DogType;
43. x = 2, y = 10이 전달되었을 때, 다음 프로그램의 출력을 써라.
void InOrder (int x, int& y){
if(y > x){
++x;
--y;
cout << x << " "<< y <
cout << x << " "<< y <
}
=> InOrder 함수는 x의 값을 복사하고 y의 주소값을 넘겼다.
x : callbyvalue
y : callbyaddress
45. 다음 프로그램을 보고 물음에 답하라.
void main (){
int x = 3; int *p;
CallByValue(x); ①
Printf ("%d\n",x); ②
p = CallByReference( ); ③
}
void CallByValue(int x){
x = 3 * x;
}
가. ②번 명령문에 의해 출력되는 값은 얼마 인가?
=> x의 값 3 출력
나. ②는 값 호출의 예다. 이를 참조 호출로 만들기 위한 ③번 명령문의 괄호 안을 완성 하라.
=> x의 주소 값을 받아야 하기 때문에 &x
다. ③번에 의해 호출되는 함수를 작성하라. 단, 함수명은 CallByReference며, 함수 는 전달된 값을 제곱하되 호출 함수에게는 포인터를 되돌려야 한다.
=>int* CallByReference(int* x){
*x = (*x) * (*x);
return x;
}
47. strcpy(string1,string2) 함수는 string2 변수의 문자열을 string1변수로 복사하는 함 수다. 이 경우, string1, string2는 배열명이면서 동시에 배열의 첫 요소를 가리키는 포 인터로 볼 수 있다. 완전한 strcpy(string1,string2) 함수를 작성하라.
=>char * strcpy(string1, string2){
int i = 0;
while (string2[i] != NULL){
string1[i] = string2[i];
i ++;
}
string1[i] = NULL;
return string1;
}
추천자료
자료구조 이중 원형 링크드 리스트 의 구현
자료구조 링크드 리스트로 구현한 다항식의 합
자료구조 C로 구현한 트리와 스택. 이를 응용한 산술식의 연산
자료구조를 이용한 주차장 시뮬레이션
자료구조 postfix, infix
자료구조 - 중위식을 후위식으로의 변환후의 값 계산
자료구조 요점정리
자료구조
자료구조의 개요
자료구조(AVL tree, hash 등)을 이용한 패턴 매칭(Pattern Matching) 구현
자료구조(스택, stack)을 이용한 최단 거리 미로 찾기 알고리즘
자료구조 Stack을 이용한 프로그램 소스 괄호 검사
자료구조와 알고리즘 BFS (INTRODUCTION TO ALGORITHMS)
미적분학_2-3장_연습문제풀이