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 |