본문 바로가기

Study/정보처리기사

C언어 Level 8

1~5. 다음 코드에 대한 출력 결과를 쓰시오.

 

1.

#include <stdio.h>
#include <stdlib.h>
int main() {
    int *arr = (int *)malloc(3 * sizeof(int));
    for (int i = 0; i < 3; i++) {
        arr[i] = i + 1;
    }
    for (int i = 0; i < 3; i++) {
        printf("%d ", arr[i]);
    }
    free(arr);
    return 0;
}

 

2.

#include <stdio.h>
#include <stdlib.h>
int main() {
    int n = 5;
    float *arr = (float *)calloc(n, sizeof(float));
    for (int i = 0; i < n; i++) {
        printf("%.2f ", arr[i]);
    }
    free(arr);
    return 0;
}

 

3.

#include <stdio.h>
#include <stdlib.h>
int main() {
    int *arr = (int *)malloc(2 * sizeof(int));
    arr[0] = 10;
    arr[1] = 20;
    arr = (int *)realloc(arr, 4 * sizeof(int));
    arr[2] = 30;
    arr[3] = 40;
    for (int i = 0; i < 4; i++) {
        printf("%d ", arr[i]);
    }
    free(arr);
    return 0;
}

 

4.

#include <stdio.h>
#include <stdlib.h>
int main() {
    int n = 4;
    int *arr = (int *)malloc(n * sizeof(int));
    for (int i = 0; i < n; i++) {
        arr[i] = i * i;
    }
    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    free(arr);
    return 0;
}

 

5.

#include <stdio.h>
#include <stdlib.h>
int main() {
    char *str = (char *)malloc(6 * sizeof(char));
    str[0] = 'H';
    str[1] = 'e';
    str[2] = 'l';
    str[3] = 'l';
    str[4] = 'o';
    str[5] = '\0';
    printf("%s\n", str);
    free(str);
    return 0;
}

 


 

정답
(드래그 시 정답이 보입니다.)

1. 1 2 3
2. 0.00 0.00 0.00 0.00 0.00
3. 10 20 30 40
4. 0 1 4 9
5. Hello

'Study > 정보처리기사' 카테고리의 다른 글

C언어 Level 10  (0) 2025.02.20
C언어 Level 9  (0) 2025.02.20
C언어 Level 7  (0) 2025.02.20
C언어 Level 6  (0) 2025.02.20
C언어 Level 5  (0) 2025.02.20