c언어 동적할당

from C/C++ 2013. 5. 5. 12:09

#include<stdio.h>
#include<malloc.h>
void main()
{
 int **p, n, i, j, sum=0;
 float *ave;
 printf("학생 수를 입력 : ");
 scanf("%d", &n);
 p=(int**)malloc(sizeof(int)*n);
 ave=(float*)malloc(sizeof(float)*3);
 for(i=0; i<n; i++)
 {
  fflush(stdin);
  p[i]=(int*)malloc(sizeof(int)*3);
  printf("%d번 학생의 3과목 성적을 입력 : ", i+1);
  scanf("%d %d %d", &p[i][0], &p[i][1], &p[i][2]);
 }
 for(i=0; i<3; i++)
 {
  sum=0;
  for(j=0; j<n; j++)
   sum+=p[i][j];
  ave[i]=(float)sum/n;
 }
 printf("국어 성적 평균은 %.2f입니다.\n", ave[0]);
 printf("영어 성적 평균은 %.2f입니다.\n", ave[1]);
 printf("수학 성적 평균은 %.2f입니다.\n", ave[2]);
 free(p);
 free(ave); 
}

'C/C++' 카테고리의 다른 글

도트매트릭스 제어  (1) 2013.09.12
C언어 포인터 및 형변환 총정리  (0) 2013.09.12
포인터로 배열 주고받기  (0) 2013.09.09
C언어 파일 + 구조체  (0) 2013.05.05
파일 오픈 예제  (0) 2013.05.05
,