38.7 단위행렬 만들기
, 신 종환님이 작성#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main()
{
int size;
scanf("%d ", &size);
int **numPtr = malloc(sizeof(int *) * size);
for(int i=0; i<size; i++)
{
numPtr[i] = malloc(sizeof(int) * size);
memset(numPtr[i], 0, sizeof(int) *size);
}
for(int i=0; i<size; i++)
{
for(int j=0; j<size; j++)
{
numPtr[i][i] = 1;
}
}
for (int i=0; i<size; i++)
{
for(int j=0; j<size; j++)
{
printf("%d ", numPtr[i][i]);
}
printf("\n");
}
for (int i = 0; i<size; i++)
{
free(numPtr[i]);
}
free(numPtr);
return 0;
}
어디가 문제인지 모르겠습니다..
Re: 38.7 단위행렬 만들기
, 도장_ 관리자님이 작성문제가 원하는 출력은 입력 5에 대해서
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1
문의한 코드의 출력은 다음과 같습니다.
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
UNIT 6 디버거 사용법을 참고해서 변수 값의 변화를 추적해보세요.