C언어/문제풀다 하나씩

max 두개 연달아 구하기 -- max값 0만들어서 구함

mcdn 2020. 4. 14. 22:26
반응형

#include <iostream>
#include <cstring>
using namespace std;

int main() {
	int arr[3][3];
	for (int i = 0;i < 3;i++) {
		for (int j = 0; j < 3;j++) {
			cin >> arr[i][j];
		}
	}
	int max[2][3] = { 0 };
	for (int k = 0; k < 2;k++) {
		int *samp = &max[k][0];
		int *sampx = &max[k][1];
		int *sampy = &max[k][2];
		for (int i = 0; i < 3;i++) {
			for (int j = 0; j < 3;j++) {
				if (*samp < arr[i][j]) {
					*samp = arr[i][j];
					*sampx = i;
					*sampy = j;
				}
			}
		}
		arr[*sampx][*sampy] = 0;
			

	}
	printf("첫번째:%d(%d,%d)\n", max[0][0], max[0][1], max[0][2]);
	printf("두번째:%d(%d,%d)", max[1][0], max[1][1], max[1][2]);

	
	return 0;
}

포인터 쓴거에 의의를 두기로함

반응형