C

함수매개변수로 [ ] 사용 해보기

GOD03219 2017. 12. 29. 20:09

#include<stdio.h>
#pragma warning(disable:4996)
void input(char scoName[], char name[], int score[]);
void oper(int score[], float avg[]);
void output(char scoName[], char name[], int score[], float avg[]);
void main()
{
 char scoName[6][10] = { "Name", "Kor","Eng","Math","Total","Avg" };
 char name[10] = { 0, };
 int score[4] = { 0 };
 float avg;

 

 input(*scoName, name, score);     // 1차원 주소로 맞춰주기
 oper(score, &avg);
 output(*scoName, name, score, &avg);

 

}


void input(char scoName[], char name[], int score[])
{
 int i;
 printf("%s input: ", scoName);
 scanf("%s", name);

 

 for (i = 0; i < 3; i++)
 {
  scoName += 10;
  printf("%s input: ", scoName);
  scanf("%d", &score[i]);

 }


}


void oper(int score[], float avg[])
{
 int i;
 for (i = 0; i < 3; i++)
      score[3] += score[i];
 avg[0] = score[3] / 3.f;
}


void output(char scoName[], char name[], int score[], float avg[])
{
 int i;
 for (i = 0; i < 6; i++)
 {
  printf("%s\t", scoName+i*10);
  
 }
 puts("");

 printf("%s\t", name);


 for (i = 0; i < 4; i++)
 {
  printf("%d\t", score[i]);

 }
 printf("%f\n", avg[0]);

 

}