#include <stdio.h>
#include <string.h>
#include <malloc.h>
#define MAX_NAME 50
struct Item
{
char name[MAX_NAME]; //품명
int price; //단가
int num; //수량
};
int main(void)
{
int i;
int count, sum=0, total; //항목개수, 합계, 총액(부가세 포함)
struct Item *item=NULL; //항목
printf("항목의 개수를 입력하세요 : ");
scanf("%d", &count); //항목개수 입력
item = malloc(count*sizeof(item)); //메모리 할당
for(i=0; i<count; i++)
{
printf("\n품명: ");
fgets(item[i].name, MAX_NAME-1, stdin); //품명 입력
item[i].name[strlen(item[i].name-1)]='\0'; //'\n' 제거
printf("단가: ");
scanf("%d", &item[i].price); //단가 입력
printf("수량: ");
scanf("%d", &item[i].num); //수량 입력
}
printf("-----------------------------------------\n");
printf("품명\t단가\t수량\n");
printf("-----------------------------------------\n");
for(i=0; i<count; i++)
{
printf("%s\t", item[i].name); //품명 출력
printf("%d\t", item[i].price); //단가 출력
printf("%d\n", item[i].num); //수량 출력
sum += (item[i].price*item[i].num); //합계 계산
}
free(item); //메모리 반납
total = (int)(sum*1.1); //부가세 포함금액
printf("-----------------------------------------\n");
printf("합게 : %d\n", sum);
printf("총액 : %d (부가세 10%% 포함)\n", total);
return 0;
}