목록C (5)
Dailelog

#include #include //#define _CRT_SECURE_NO_WARNINGS int getSum(int **x,int row,int col) { int s = 0; int i,j; for(i = 0; i

#include #include main() { int *p; //int p[3]; //원래는 이렇게 자동할당으로 배열을 만들어 주어야 하는데 만들어주지 // 않고 동적할당으로 heap영역에 만들게 됨 int i; p = (int *) malloc(3*sizeof(int));//12byte를 할당해서 저장 장소 3개를 만드는 행위 //동적할당은 사용하는 이유는 배열에서 공간을 예상해서 선언해주는데 그 공간이 정해지지 않을때 //그리고 오버플로우를 방지하기 위해서 //int p[n]; 배열의 크기는 변수로 못함 그래서 sizeof앞에 수를 변수로 처리하면 오버플로우 없이 //저장공간을 그때그때 할당할수 있다. p[0] = 13; p[1] = 72; p[2] = 81; for(i = 0; i

오늘은 문자열 함수 중 srtlen()를 공부하고 직접 strlen를 구현해 보았다. #include #include int my_strlen(char *s) { int n; for(n = 0; *s != '\0'; s++) { n++; } return n; } main() { char x[10];//= {'k','i','m','\0'}; int n; int i; /* x[0] = 'k'; //''를 사용하는 이유는 문자 상수 이기 떄문에 실제로는 아스키 코드 값이라고 생각하면 됨 x[1] = 'i'; x[2] = 'm'; x[3] = '\0';// \0은 나머지 문자열 자리에 NULL 캐릭터 값을 넣는 역활을 한다. */ //사용하지 않는다면 쓰레기 값이 들어가게 된다. for(i = 0; i

오늘 강의 핵심은 2차원 배열을 사용하고 범용성을 가진 함수 만들어 보고 사용하는 방법을 배우는 것이 목적이었다. 보통 2차원 배열 즉 2Dimensional Array는 표처럼 사용되는 경우가 많다. 근데 이 2차원 배열을 함수 속에서 사용할 때 문제 되는 점이 존재한다. 그것은 함수는 범용성을 가지고 있어야 한다. 그 과정에서 2차원 배열을 함수 속에서 1차원 배열처럼 사용하는 것이다. 우리가 생각하는 2차원 배열은 직사각형의 표라고 생각하는 경우가 보통이다. 하지만 컴퓨터의 메모리는 그렇지 않다. 메모리는 변수를 저장하는 주솟값을 1열로 저장하기 때문에 우리도 함수에서 1열로 주솟값을 받아와 이용할 생각이다. 아래의 코드를 확인해보자. #include //void print2DArray(int p[..
2562번:최댓값 문제 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다. 입력 첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100 보다 작다. 출력 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다. #include int getMax(int p[],int n) { int max; int maxPos; int i; max = -1; maxPos = -1; for(i = 0; i < n; i++) { if..