반응형
1. Array : Let’s assume that we have the following declaration:
1.1. Please store the above data using scanf() function in two 2-dimension array, respectively. You can show the result.
1.2. Please create a new array ‘element[2][3]’ to obtain the sum of the value of First array and Second array. For example,
element[1][2] = First[1][2]+Second[1][2].
element[2][1] = First[2][1]+Second[2][1].
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | /* {{16,18,23},{54,91,11}} {{24,52,77},{16,19,59}} 1-1)Please store the above data using function in two 2-dimension array, respectively. You can show the result. 1-2)Please create a new array ‘Element[2][3]’ to obtain the sum of the value of First array and Second array. For example, Element[1][2] = First[1][2]+Second[1][2]. Element[2][1] = First[2][1]+Second[2][1]. ROW : 행 수 COL : 열 수 array_input : 배열에 원소 값을 사용자가 입력할 수 있게 하는 함수 array_print : 배열을 원소별로 출력해주는 함수 array_sum : 배열의 합을 구해주는 함수 First[ROW][COL] : 2*3 사이즈의 2차원 배열1 Second[ROW][COL] : 2*3 사이즈의 2차원 배열2 Element[ROW][COL] : 2*3 사이즈의 2차원 배열, 동일한 위치의 First와 Second 의 원소의 합이 들어갈 배열 */ #include <stdio.h> #define ROW 2 #define COL 3 void array_input(int num,int array[][COL]); void array_print(int num,int array[][COL]); void array_sum(int array1[][COL],int array2[][COL],int array3[][COL]); int main(void) { int First[ROW][COL]; int Second[ROW][COL]; int Element[ROW][COL]; array_input(1,First); array_input(2,Second); array_sum(First,Second,Element); printf("\n"); array_print(1,First); printf("\n"); array_print(2,Second); printf("\n"); array_print(3,Element); return 0; } void array_input(int num,int array[][COL]) { int i;int j; printf("<%d번째 배열 입력>\n",num); for(i=0;i<ROW;i++) { for(j=0;j<COL;j++) { printf("%d번배열[%d][%d] 값 입력 : ",num,i,j); scanf("%d",&array[i][j]); } } } void array_print(int num,int array[][COL]) { int i;int j; for(i=0;i<ROW;i++) { for(j=0;j<COL;j++) { printf("%d번배열[%d][%d] : %d\n",num,i,j,array[i][j]); } } } void array_sum(int array1[][COL],int array2[][COL],int array3[][COL]) { int i;int j; for(i=0;i<ROW;i++) { for(j=0;j<COL;j++) { array3[i][j]=array1[i][j]+array2[i][j]; } } } | cs |
2. Pointer : Let’s assume the next arrangement was declared. Calculate the final value of the following expression:
2.1. *(**p+3), *(**p+1), p[0], **(p[1]+1), *(p[1] +1)
2.2. *text, *(text+3), *(text+7)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | #include <stdio.h> int main(void) { char *p[3][2]={"abcd","efgh","ijklm","nop","qrstuv","wxyz"}; char *text; char more[]="Happy Holidays"; text=&more[4]; //'y'의 주소 printf("*(**p+3)=%c\n",*(**p+3)); printf("*(**p+1)=%c\n",*(**p+1)); printf("p[0]=%x\n",p[0]); printf("**(p[1]+1)=%c\n",**(p[1]+1)); printf("*(p[1]+1)=%x\n",*(p[1]+1)); printf("\n"); printf("*text=%c\n",*text); printf("*(text+3)=%c\n",*(text+3)); printf("*(text+7)=%c\n",*(text+7)); } | cs |
반응형
'컴퓨터 & 프로그래밍 & 전자공학 > Data Sturcture' 카테고리의 다른 글
dfs, bfs, prim, kruskal (0) | 2017.10.01 |
---|---|
preorder, postorder, inorder, heap, tree (0) | 2017.10.01 |
stack, queue (0) | 2017.10.01 |
참고 사항 (0) | 2017.10.01 |
하노이의 탑, iterative, recursive fucntcion, 이진 탐색 (0) | 2017.10.01 |