티스토리 뷰

1402. 거꾸로 출력하기 3

데이터 n개가 입력되면, 입력의 역 순으로 출력하는 프로그램을 작성하자.

첫째 줄에 데이터의 개수 n이 입력되고, 둘째 줄에는 공백을 기준으로 n개의 데이터가 입력된다.

 

 

배열 사용하기
#include <stdio.h>

int main(void){
    int n;
    scanf("%d", &n);
    int arr[n];
    
    for(int i=0; i<n; i++){
        scanf("%d", arr+i);
    }
    
    for(int i=n-1; i>=0; i--){
        if(i==0) printf("%d",arr[i]);
        else printf("%d ",*(arr+i));
    }
}

 

동적 메모리 사용하기
#include <stdio.h>
#include <stdlib.h> 

int main(void){
    int n;
    scanf("%d", &n);
    int *parr = (int*)malloc(sizeof(int)*n);

    //동적 메모리 할당 여부 확인
    if(parr==NULL){
        printf("동적 메모리 할당 실패\n");
        exit(1);
    }
    
    for(int i=0; i<n; i++){
        scanf("%d", parr+i);
    }
    
    for(int i=n-1; i>=0; i--){
        if(i==0) printf("%d",parr[i]);
        else printf("%d ",*(parr+i));
    }

    free(parr);
    return 0;
}

 

1409. 기억력 테스트 1

첫째 줄에 숫자 10개가 차례대로 입력된다. 둘째 줄에 k값이 입력된다. k번째 숫자가 무엇이었는지 출력한다.

 

 

배열 사용하기
#include <stdio.h>

int main(void){
    int arr[10];
    int k;

    for(int i=0; i<10; i++){
        scanf("%d", &arr[i]);
    }

    scanf("%d", &k);
    printf("%d", arr[k-1]);
}

 

동적 메모리 사용하기
#include <stdio.h>
#include <stdlib.h> 

int main(void){
    int *parr = (int*)malloc(sizeof(int)*10);
    int k;
    
    for(int i=0; i<10; i++){
        scanf("%d", &parr[i]);
    }

    scanf("%d", &k);
    printf("%d", parr[k-1]);
}

 

 

 

 

댓글
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
최근에 올라온 글
글 보관함
Total
Today
Yesterday