평균 표준편차 구하는 빌런입니다.. 코드가 잘 돌아가기는 하지만 교재에서의 조건은
함수를 배열인수를 사용해야한다. 구체적으로 말해서 다음과 같은 프로토타입으로 함수를 작성하여라
void read_array(int n[], int size);
double average(int n[], int size);
double average(int n[], int size, double average);
뭐 함수를 이렇게 만들라고는 하는데 도저히 그렇게는 안되더라구요;
혹시 제가 놓친게 있을까요?
#include <stdio.h>
#include <math.h>
#define NUM 10
read_array(float n[], int size)
{
printf("%d 개의 숫자를 차례대로 입력하세요.\n", NUM);
for (size = 0; size < NUM; ++size)
scanf("%f", &(n[size]));
}
double average(float n[], double size)
{
int i = 0;
for (i = 0; i < NUM; ++i)
size += n[i];
return size;
}
double std_dev(float n[], double size, double average)
{
int i = 0;
for (i = 0; i < NUM; ++i)
size += (n[i] - average) * (n[i] - average);
return size;
}
int main()
{
float a[NUM];
double sum, avg, std;
int i = 0;
read_array(a, i);
for (i = 0; i < NUM; ++i)
//평균
sum = 0;
avg = average(a, sum) / NUM;
//표준편차
sum = 0;
std = sqrt(std_dev(a, sum, avg) / NUM);
//평균과 표준편차 출력
printf("평균 = %lf\n", avg);
printf("표준편차 = %lf\n", std);
return 0;
}
댓글 0