감 ¶
기 나된 료는 다른 , 배 각각 ..
각보다 려다.
과 같 for 들가게 되면 값 려 따로 리다보 가 길다.
더 방법 까??
각보다 려다.
과 같 for 들가게 되면 값 려 따로 리다보 가 길다.
더 방법 까??
물론 런 각 보다. matrix를 temp1,2 matrix를 만들 과 따로 다..
만 내 각 변 낭될 것 같고 그냥 matrix 복를 더 다.
만 내 각 변 낭될 것 같고 그냥 matrix 복를 더 다.
- 나대로 sort 대 러가 각 게 된 기가 된 것 같다.
로 려 보기 고..
또 더 더 로그램 만들기 떻게 까 ? 그리고 C 리는 방법 뭘까?
고 각 봤다. 그래 각면 로그래밍 것, 또 린 때문 많 린 것 같다.
고 각 봤다. 그래 각면 로그래밍 것, 또 린 때문 많 린 것 같다.
¶
~cpp
#include <stdio.h>
#define MATRIX_SIZE 4
void search_max(int matrix[][MATRIX_SIZE]);
void print_matrix(int matrix[][MATRIX_SIZE]);
void change(int *, int *);
int i, j;
void main()
{
int matrix[MATRIX_SIZE][MATRIX_SIZE] = {{0,}};
//3 * 3 력 .
for(i = 0; i < MATRIX_SIZE - 1; i++){
for(j = 0; j < MATRIX_SIZE -1; j++){
printf("matrix[%d][%d] = ", i, j);
scanf("%d", &matrix[i][j]);
}
}
// 가 기.
search_max(matrix);
//력
print_matrix(matrix);
}
void search_max(int matrix[][MATRIX_SIZE])
{
int temp_matrix[4][4], a, b;
for(i = 0; i < MATRIX_SIZE; i++){
for(j = 0; j < MATRIX_SIZE; j++){
temp_matrix[i][j] = matrix[i][j];
}
}
// 기
for(i = 0; i < MATRIX_SIZE-1; i++){
for(j = 0; j < MATRIX_SIZE-2; j++){
if(temp_matrix[i][j] > temp_matrix[i][j+1]){
change(&temp_matrix[i][j], &temp_matrix[i][j+1]);
}
}
matrix[i][MATRIX_SIZE-1] = temp_matrix[i][MATRIX_SIZE-2];
}
for(i = 0; i < MATRIX_SIZE; i++){
for(j = 0; j < MATRIX_SIZE; j++){
temp_matrix[i][j] = matrix[i][j];
}
}
// 기
for(i = 0; i < MATRIX_SIZE-1; i++){
for(j = 0; j < MATRIX_SIZE-2; j++){
if(temp_matrix[j][i] > temp_matrix[j+1][i]){
change(&temp_matrix[j][i], &temp_matrix[j+1][i]);
}
}
matrix[MATRIX_SIZE-1][i] = temp_matrix[MATRIX_SIZE-2][i];
}
// 기 막
for(i = 0; i < MATRIX_SIZE-2; i++){
if(temp_matrix[MATRIX_SIZE-1][i] > temp_matrix[MATRIX_SIZE-1][i+1]){
change(&temp_matrix[MATRIX_SIZE-1][i], &temp_matrix[MATRIX_SIZE-1][i+1]);
}
if(temp_matrix[i][MATRIX_SIZE-1] > temp_matrix[i+1][MATRIX_SIZE-1]){
change(&temp_matrix[i][MATRIX_SIZE-1], &temp_matrix[i+1][MATRIX_SIZE-1]);
}
}
a = temp_matrix[MATRIX_SIZE-1][MATRIX_SIZE-2];
b = temp_matrix[MATRIX_SIZE-2][MATRIX_SIZE-1];
matrix[MATRIX_SIZE-1][MATRIX_SIZE-1] = a > b ? a : b;
}
void print_matrix(int matrix[][MATRIX_SIZE])
{
for(i = 0; i < MATRIX_SIZE; i++){
for(j = 0; j < MATRIX_SIZE; j++){
printf("%5d", matrix[i][j]);
}
if(j == MATRIX_SIZE)
printf("\n");
}
}
void change(int *a, int *b)
{
int temp;
temp = *a;
*a = *b;
*b = temp;
}










