목록문제풀이연습/C언어 예제풀이 연습 (4)
Taking baby-developer steps
동적 메모리 할당을 이용해 2차원 배열을 만들면, 정확히 필요한 만큼만 그때 그때 효율적으로 만들어서 사용가능하다. #include #include int main(void){ int** p = (int**)malloc(sizeof(int)*3); for (int i=0; i
특정한 위치의 원소를 삭제하는 함수 Q. 특정한 위치의 원소를 삭제하는 함수는 어떻게 만들 수 있을까? #include #define INF 10000 int arr[INF]; // 메모리 공간이 거의 무한에 가깝게 존재한다고 가정 int count = 0; void addBack(int data){ arr[count] = data; count++ ; } void addFirst(int data){ for(int i = count; i>=1; i--){ arr[i] = arr[i-1] ; } arr[0] = data ; count++; } void show(){ for(int i = 0; i< count ; i++){ printf("%d\n", arr[i]); } } 지난 번 포스팅에서 위와 같이 배열기..
배열 기반의 리스트를 만들고, 특정한 data를 배열의 뒷부분에 담는 함수 addBack(), 특정한 data를 배열의 가장 앞 부분에 담는 함수 addfirst(), 배열에 담겨있는 모든 원소를 하나씩 출력하는 함수 show() 를 만들어 봤다. #include #define INF 10000 int arr[INF]; int count = 0; void addBack(int data){ arr[count] = data; count++ ; } void addfirst(int data){ for( int i = count; i >= 1; i--){ arr[i] = arr[i-1]; } arr[0] = data; count++ ; } void show(){ for (int i = 0 ; i 1 2 3 4 5..
두 정수를 입력받아, 사칙연산 출력하기 #define _CRT_SECURE_NO_WARNINGS #include int main(void){ int a, b; scanf("%d %d", &a, &b); printf("%d + %d = %d \n", a,b, a+b); printf("%d - %d = %d \n", a,b, a-b); printf("%d * %d = %d \n", a,b, a*b); printf("%d / %d = %d \n", a,b, a/b); printf("%d %% %d = %d \n", a,b, a%b); system("pause"); return 0; } 두 정수를 입력받아, 처음 숫자가 큰 값이면 참을 출력하기 #define _CRT_SECURE_NO_WARNINGS #incl..