평균과 표준편차 한번에 구하는 예제인데,빌드를 진행하면 2가지오류가 뜹니다. LNK2005 main 이 이미 정의되어 있습니다. LNK1169 여러번 정의된 기호가 있습니다.

조회수 411회
#include <stdio.h> 
#include <math.h> 

#define NUMMAX 10 

void get_data();
void calc_avgstd(double* pavg, double* pstdev);

double num[NUMMAX]; 
int n;

void main()
{
    double avg, stdev;
    get_data();
    calc_avgstd(&avg, &stdev);

printf("\n 평균 = %6.2lf\n", avg); 
printf("표준편차 = %6.2lf\n\n", stdev); 
}

void get_data() {
    printf("최대 10개의 실수를 입력하세요.\n");
    printf("입력을 종료하려면, 0 이하의 수를 입력하세요.\n\n");
    n = 0;
    while (n < 10)
    {
        printf("숫자 %d: ", n + 1);
        scanf_s("%lf", &num[n]);
        if (num[n] > 0.0)

            n += 1;
        else
            break;
    }
}


void calc_avgstd(double* pavg, double* pstdev)
{
    double sum, ssum, mean, variance, std;
    int k;

    sum = ssum = 0.0;
    for (k = 0; k < n; k++)
    {
        sum += num[k];
        ssum += (num[k] * num[k]);
    }
    mean = sum / (double)n;
    variance = ssum / (double)n - mean * mean;
    std = sqrt(variance);

    *pavg = mean;
    *pstdev = std;
}

이미지

1 답변

  • 하나의 프로젝트에는 하나의 main함수만 있어야합니다.

    질문의 코드가 포함된 cpp 파일 외에도 다른 cpp 파일이 하나 더 프로젝트에 포함되어 있고, 그 속에도 main함수가 있을 겁니다. 아마도 다른 예제나 숙제를 위해 작성했었던 코드겠지요.

    질문의 코드가 포함된 cpp 파일만 남기고, 기존의 파일을 프로젝트에서 제외한 후에 빌드하시면 에러가 해결됩니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)