구조체 포인터 : 도서관 도서 목록

2024. 7. 19. 10:56정보처리,전산/Clang

반응형
#include <stdio.h>

// Book 구조체 정의
struct Book {
    char title[50];  // 도서 제목
    char author[50]; // 저자
    float price;     // 가격
    int year;        // 출판 연도
};

// main 함수
int main() {
    // Book 구조체 배열 초기화
    struct Book books[3] = {
        {"The Catcher in the Rye", "J.D. Salinger", 10.99, 1951},
        {"To Kill a Mockingbird", "Harper Lee", 7.99, 1960},
        {"1984", "George Orwell", 8.99, 1949}
    };

    struct Book p = books; // 포인터 p를 구조체 배열의 첫 번째 요소로 설정

    float total_price = 0; // 총 가격 초기화
    float average_price;   // 평균 가격 변수

    // 각 도서의 가격을 총 가격에 더함
    for (int i = 0; i < 3; i++) {
        total_price += (p + i)->price;
    }

    // 평균 가격 계산
    average_price = total_price / 3;

    // 각 도서의 정보 출력
    for (int i = 0; i < 3; i++) {
        printf("도서 제목: %s\n", (p + i)->title);
        printf("저자: %s\n", (p + i)->author);
        printf("가격: $%.2f\n", (p + i)->price);
        printf("출판 연도: %d\n\n", (p + i)->year);
    }

    // 총 가격과 평균 가격 출력
    printf("총 가격: $%.2f\n", total_price);
    printf("평균 가격: $%.2f\n", average_price);

    return 0;
}

 

 

 

 

반응형

'정보처리,전산 > Clang' 카테고리의 다른 글

포인터 배열 , 배열 포인터  (1) 2024.07.24
switch case while  (0) 2024.07.19
소수구하기  (0) 2024.07.18
구조체 값 입력 받기  (0) 2024.07.18
포인터, 문자열, 배열, 기본 입출력  (0) 2024.07.15