C language/열혈C 문제풀이

[C] 열혈C 문제풀이 13-1 1번,3번

저별이 2021. 8. 12. 09:54
728x90

문제1) 길이5인 int형 배열 arr을 선언하고 이를 1,2,3,4,5로 초기화 한 다음, 이 배열의 첫번째 요소를 가르키는 포인터 변수 ptr를 선언한다. 그 다음 포인터 변수 ptr에 저장된 값을 증가시키는 형태의 연산을 기반으로 배열요소에  접근하면서 모든 배열요소의 값을 2씩 증가시키고, 정상적으로 증가가 이루어졌는지 확인하는 예제를 작성해보자

#include <stdio.h>
int main(void){
    int arr[5]={1,2,3,4,5};
    int *ptr=arr;
    int i=0;
    while(i<5){
        *(ptr+i)+=2;
        printf("%d ", (*ptr+i));
        i++;
    }
    
}

문제3) 길이가 5인 int형 배열 arr을 선언하고 이를 1,2,3,4,5로 초기화한 다음, 이 배열의 마지막 요소를 가르키는 푄터 변수 ptr을 선언한다. 그 다음 포인터 변수 ptr에 저장된 값을 감소시키는 형태의 연산을 기반으로 모든 배열요소에 접근하여, 배열에 저장된 모든 정수를 더하여 그 결과를 출력하는 프로그램을 작성해보자

#include <stdio.h>
int main(void){
    int arr[5]={1,2,3,4,5};
    int *ptr=&arr[4];
    int i=0;
    int total=0;
    while(i<5){
        total+=*(ptr--);
        i++;
    }
    printf("%d ", total);
}
728x90