/*8구조체배열.c
*/
#include<stdio.h>
#include"Sungjuk.h"
typedef struct Sungjuk score;//구조체 이름 변경(꼭할필요는 없으나 작업이 편리해짐)
int main()
{
int i,j;
score p[5]=
{
{110833,"홍길동",87,88},
{110837,"강길동",90,88},
{110855,"주길동",67,88},
{110824,"살 동",87,100},
{110814,"박길동",100,100}
};//구조체변수 p선언(멤버변수의 순서대로)
//printf("p의 byte수 : %d\n",sizeof(p));
for(i=0;i<5;i++)
{
p[i].tot=p[i].kor+p[i].eng;
p[i].ave=p[i].tot/2.0;
switch((int)p[i].ave/10)
{
case 10:
case 9:p[i].grade='A';break;
case 8:p[i].grade='B';break;
case 7:p[i].grade='C';break;
case 6:p[i].grade='D';break;
default:p[i].grade='F';
}
}
//등수구하기
for(i=0;i<5;i++)
{
p[i].rank=1;
for(j=0;j<5;j++)
{
if(p[i].tot < p[j].tot) p[i].rank++;
}
}
printf("번호\t이름\t국어\t영어\t총점\t평균\t평가\t등수\n");
for(i=0;i<5;i++)
{
printf("%d\t%s\t%3d\t%3d\t%4d\t%5.1f\t%3c\t%2d\n",p[i].no,p[i].name,p[i].kor,p[i].eng,p[i].tot,p[i].ave,p[i].grade,p[i].rank);//구조체변수.멤버변수
}
return 0;
}
/*9판매.c
#1)
코드? a
수량? 10
#1)
...
-----------------------*판매보고서*----------------
코드 제품명 수량 단가 판매금액 판매순위
X
코드가 a(A)면 제품명이 지우개, 단가 700
코드가 b(B)면 제품명이 도화지, 단가 500
코드가 c(C)면 제품명이 샤 프, 단가 3900
코드가 d(D)면 제품명이 노 트, 단가 2500
그외의 코드면 제품명이 크래파스, 단가 7800
금액=수량*단가, 순위는 금액으로 구함
비고 판매수량이 20개 이상이면 양호 그렇지않으면 ★출력
*/
#include<stdio.h>
#include<string.h>
#include<ctype.h>
#include"Panmae.h"
typedef struct Panmae pan;
int main()
{
int i,j;
pan p[5];
for(i=0;i<5;i++)
{
printf("#%d)\n",i+1);
printf(" 코드? ");
//p[0].code=getchar();
fflush(stdin);
scanf("%c",&p[i].code);
printf(" 수량? ");
scanf("%d",&p[i].su);
switch(tolower(p[i].code))
{
case 'a':strcpy(p[i].jepum,"지 우 개");p[i].dan=700;break;
case 'b':strcpy(p[i].jepum,"도 화 지");p[i].dan=500;break;
case 'c':strcpy(p[i].jepum,"샤 프");p[i].dan=3900;break;
case 'd':strcpy(p[i].jepum,"노 트");p[i].dan=2500;break;
default:strcpy(p[i].jepum,"크래파스");p[i].dan=7800;
}
p[i].kum=p[i].su*p[i].dan;
if(p[i].su>=20)
strcpy(p[i].bigo,"양호");
else strcpy(p[i].bigo,"★");
}
//순위
for(i=0;i<5;i++)
{
p[i].rank=1;
for(j=0;j<5;j++)
{
//if(i==j) continue;
if(p[i].kum < p[j].kum) p[i].rank++;
}
}
printf("-----------------------*판매보고서*----------------\n");
printf("코드\t제품명\t수량\t단가\t판매금액\t판매순위\t비고\n");
for(i=0;i<5;i++)
{
printf("%c\t%s\t%d\t%d\t%d\t%d\t%s\n",p[i].code,p[i].jepum,p[i].su,p[i].dan,p[i].kum,p[i].rank,p[i].bigo);
}
return 0;
}
/판매보고서의 header파일 "Panmae.h"/
struct Panmae
{
char code;
char jepum[15];
int su;
int dan;
int kum;
int rank;
char bigo[10];
};
'PROGRAMMING > C' 카테고리의 다른 글
[기초] 1. C언어 개요 (0) | 2011.03.03 |
---|---|
[대체] 성적표구조체배열(사용자함수) (0) | 2011.02.18 |
[대체] 13. 구조체 (0) | 2011.02.18 |
[대체] 12. 포인터 (0) | 2011.02.18 |
[대체] 사용자함수 (0) | 2011.02.18 |