코딩 테스트/백준

백준 25314번

BBakGoSu 2024. 4. 6. 22:57

 

핵심: n 을 입력받고(n은 4의 배수) "long " (띄어쓰기 있음) 이것을 n/4번 +int로 출력해라

따라서 "long "가지고 있는 배열을 n/4번 출력해야하는 배열이 있어야 하니까 동적 배열을 할당해야한다. 

따라서 malloc를 사용했다. 

 

void *malloc(size_t size);

 

malloc함수의 원형이다. 우리가 원하는 size n/4개의 5배 만큼 필요하다.("long ")이 5칸이기 때문에

이후 strcat을 이용하여 배열에 추가한다. 

int 붙여서 출력하면 끝

 

답:

더보기

답:

#include<stdio.h>
#include <stdlib.h>
#include <string.h>

int main(){
    char k[] ="long ";
    int n=0;
    scanf("%d",&n);
    n = n/4;
    char *a = (char *)malloc(n*5);
    memset(a,0,n*5+4);
    for(int i =0;i<n;i++ ){
        strcat(a,k);
    }
    printf("%sint",a);
    free(a);
    return 0;
    
}