: #include <stdio.h>
: main()
: {
: char *name[10], ban[10], *s_num[10], *grade[8];
: int j, i, hak_sum[10], subject[10][8], hakjum[8] = {4, 3, 3, 3, 4, 3, 4, 4};
: float sum[10], ave[10], gr[8];
:
:
: clrscr();
: printf("Name, Ban, S_num and 8 Grade :\n");
:
: for (i=0;i<10;i++){
: scanf("%s %c %s", name[i],&ban[i], s_num[i]);
: for(j=0;j<8;j++)
: scanf("%d",&subject[i][j]);
: }
:
: for(i=0;i<10;i++){
: for(j=0;j<8;j++){
: if(subject[i][j]<=100 &&subject[i][j] >=95)
: {
: gr[j] = 4.5;
: grade[j] = "A+";
: }
: else if(subject[i][j]>=90)
: {
: gr[j] = 4.0;
: grade[j] = "A0";
: }
: else if(subject[i][j]>=85)
: {
: gr[j] = 3.5;
: grade[j] = "B+";
: }
: else if(subject[i][j]>=80)
: {
: gr[j] = 3.0;
: grade[j] = "B0";
: }
: else if(subject[i][j]>=75)
: {
: gr[j] = 2.5;
: grade[j] = "C+";
: }
: else if(subject[i][j]>=70)
: {
: gr[j] = 2.0;
: grade[j] = "C0";
: }
: else if(subject[i][j]>=65)
: {
: gr[j] = 1.5;
: grade[j] = "D+";
: }
: else if(subject[i][j]<=60)
: {
: gr[j] = 1.0;
: grade[j] = "D0";
: }
: else
: gr[j] = 0.0;
: grade[j] = "F";
: }
: sum[i] += gr[j] * hakjum[j];
: hak_sum[i] += hakjum[j];
:
: ave[i] = sum[i]/hak_sum[i];
: }
: }
: for(i=0;i<10;i++)
: {
: for(j=0;j<9;j++)
: printf("%s %s %d %.2f %.2f",s_num[i],name[i],subject[i][j],sum[i],ave[i]);
: }
: }
아웅.. 결국 또 글을 남기네요..
설명을 드리자면 10명의 학생의 이름과 반 학번 8과목의 성적을 순서대로 입력받아서
(학번) (이름) (8과목의 점수) (과목평균) (학점)
을 출력하는 프로그램입니다.
아 물론 저 코드는 틀렷다는걸 알지요 ㅎㅎ
여기서 궁금한것은 10명의 데이터를 입력 받아서 출력 할때
printf를 어떻게 써야 10명의 (학번) (이름) (8과목의 점수) (과목평균) (학점) 이 출력 되는지 이것이 궁금합니다,
|