U E D R , A S I H C RSS

새싹교실/2017/꽃밭/0418

◀이전수업▒▒▒▒▒다음수업▶

1. 사진 찍기!!!

2. 수업 내용



3. 실습 1 : sorting

배열 a를 정렬해서 배열 result에 담는 코드

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(){
	int a[5], result[5];
	int max = -999;
	int i, j, index;

	//get input
	for (i = 0; i < 5; i++){
		scanf("%d", &a[i]);
	}

	//sorting
	for (j = 0; j < 5; j++){
		for (i = 0; i < 5; i++){
			if (a[i] > max){     //a 배열에서 현재 가장 큰 수를 max에 담는다.
				max = a[i];
				index = i;   //나중에 -999로 초기화하기 위해 현재 수의 번호(index)를 저장해놓는다.
			}
		}
		result[j] = max;         //가장 큰 수를 result배열에 0번부터 4번까지 차례대로 담는다.
		a[index] = -999;         //result배열에 담은 수는 -999로 초기화하여 다음에 max값을 계산할 때 또 걸리지 않도록 한다.
		max = -999;              //max값 초기화
	}

	//오름차순 출력
	for (i = 4; i >=0; i--){
		printf("%d ", result[i]);
	}
	printf("\n");

	return 0;
}


4. 실습 2 : 행렬 곱셈

3X3 행렬 a와 b를 곱하여 c에 저장합니다.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(){
	//행렬 초기화
	//int a[3][3] = {1, 2, 3, 4, 5, 6, 7, 8, 9} 이런 식으로 해도 된답니다~
	int a[3][3] =
              { { 1, 2, 3 },
		{ 4, 5, 6 },
		{ 7, 8, 9 } };

	int b[3][3] =
              { { 1, 0, -1 },
		{ 0, 1, -2 },
		{ 0, 0, -3 } };

	//c는 0으로 초기화를 꼭 해주어야 합니다.
	int c[3][3] = { 0 };
	int i, j, k;

/*	만약 사용자로부터 입력을 받고 싶다면 이 부분을 추가하세요~
	for (i = 0; i < 3; i++){
		for (j = 0; j < 3; j++){
			scanf("%d", &a[i][j]);
		}
	}
	for (i = 0; i < 3; i++){
		for (j = 0; j < 3; j++){
			scanf("%d", &b[i][j]);
		}
	}
*/

	for (k = 0; k < 3; k++){
		for (i = 0; i < 3; i++){
			for (j = 0; j < 3; j++){
				c[k][i] += a[k][j] * b[j][i];
			}
		}
	}

	//print result
	for (i = 0; i < 3; i++){
		for (j = 0; j < 3; j++){
			printf("%d ", c[i][j]);
		}
		printf("\n");
	}

	return 0;
}

5. 후기

5.2. 유진


5.3. 현지


Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:30:05
Processing time 0.0179 sec