남의 숙제 해주기 : C 프로그램

/*
학생들의 성적이 scores 라는 2차원 배열에 저장되어 있다고 가정하자.
scores 의 행은 한 학생에 대한 여러번의 시험성적을 나타낸다.
scores 의 열은 한 시험에 대한 여러 학생들의 성적이다.
학생별로 성적의 평균을 구하려고 한다.
2차원 배열의 각 행이 1차원 배열임을 이용하여
다음과 같이 1차원배열의 평균을 구하는 함수 get_average()를 호출하여
각 학생에 대한 평균 성적을 계산하여 보라.
*/
#include <stdio.h>

double get_average(int list[], int n);

#define STUDENTS 3
#define EXAMS 5

int scores[STUDENTS][EXAMS] = {
{60, 70, 45, 75, 80},
{70, 95, 100, 100, 40},
{30, 50, 60, 100, 95}
};

int main(void)
{
int i;

for (i=0;i<STUDENTS;i++)
{
printf("student # : %d, avr.score : %f \n", i, get_average(scores, i));
}
return 0;
}

double get_average(int list[], int n)
{
int i;
int s = 0;
int c;

for (i=0;i<EXAMS;i++)
{
c = (n * EXAMS + i);
s = s + list[c];
}
return (s / EXAMS);
}


솔직히 말해서 정말 솔직히 말해서 우리나라 일반적인 전산관련 전공자 수준이 이정도 수준의 문제를 1학년1학기 퀴즈도 아니고 졸업시험으로 본다는데 정말 실망했습니다. 다행히도 제 주변에 계신 학생 분들은 이정도는 아닌 것 같아서 다행입니다.

제가 5분 뚝딱 해서 만든 이 코드가 문제의 답인줄은 솔직히 잘 모르겠습니다. 그냥 컴파일이 잘 되는 수준으로 옮겨봤습니다. 그들과 같이 수업을 받은 것이 아니니까 출제의 의도도 잘 모르겠습니다.

이 문제를 의뢰 하신분께도 말씀드렸는데, 이 문제를 다른 언어로라도 스스로 해결하지 못한다면 진로를 적성에 맞는 다른 방향으로 바꾸는 것을 추천 합니다. 그것도 최대한 빠를 수록 본인에게 더 나은 직업을 찾을 기회를 가질 수 있을 꺼라고 봅니다.

졸업시험문제로 이 문제가 출제되고는 머리를 쥐어 짜내는 안타까운 탄성이 강의실에 울러퍼졌다고 합니다.

상황이 이러니 IT업계 신입사원을 전공 졸업자를 못뽑고 학원나오고 프로젝트 한사람들을 뽑는거 아니겠습니까.

졸업하는데 토익점수 필요할텐데 그건 공부하고 정작 전공은 공부 안한겁니까. 아니 최소한 문제해결능력이라도 경험으로라도 가지고 있어야 이제 성인인데 사회나와서 먹고살꺼 아닙니까.

정말 실망 했습니다.



덧글

  • NoSyu 2008/12/01 18:41 # 답글

    반갑습니다. 밸리를 타고 왔습니다.
    이것이 1차 레포트..가 아니라 졸업시험입니까?!!

    아마 졸업시험 1번 문제로 생각하고 있습니다..OTL.....
  • 무혼인형 2008/12/02 11:21 #

    반갑습니다. 저 소스를 받고 더 이야기가 없었던 것으로 보아 한문제였던거 같습니다. 아직도 정신이 어질어질하네요.
  • timidity 2008/12/01 20:20 # 답글

    안녕하세요 ~ 밸리에서 보고 왔습니다 : )

    저거.. ;;; 쪽지시험에나 나올법한 문젠데요;;;;
    저런거를 졸업시험이라고 내는건가요;;;; 이 무슨....
  • 무혼인형 2008/12/02 11:22 #

    안녕하세요. 밸리로 많이 보고 와주셨네요. 감사합니다. 저도 첨에 많이 의심했더랍니다.
  • 희야♡ 2008/12/01 21:50 # 답글

    1학년과정의 C프로그래밍중간시험 아닌가요?....설마..;;
  • 무혼인형 2008/12/02 11:24 #

    안녕하세요. 보통 첫학기 씨프로그래밍과정이 입출력과 제어구조까지 중간고사고 그 이후에 포인터와 자료구조에 (학생들은 싫어하겠지만)시간이 남으면 파일에 소켓통신까지 배우던데요. 포인터를 사용하라고 강제한 것도 아니고 문제가 좌설스럽더군요.
  • 나르치스 2008/12/02 00:49 # 답글

    안타깝네요..어느학교인지....
  • 무혼인형 2008/12/02 11:25 #

    안녕하세요. 그것 까지는 차마 물어보지 않았습니다. 2년제일수도 있겠고요. 4년제일 수도 있겠지만 아무리 대학이 취업학원이라고 해도 너무 한 것 같더군요. 아니 다시생각해보니 취업에 역행하는 상황이 되어버렸달까요;
  • 리혜 2008/12/02 10:15 # 답글

    저건 1학년 2학기 중간고사범위;;;;;
  • 무혼인형 2008/12/02 11:28 #

    안녕하세요. 난감하네요.
  • 승네군 2008/12/02 12:47 # 답글

    오오 뭔가 간지나게 어렵습니다...-.-;
    (사실.. 제가 저런부류의 학생이라서.. 죄송;;)
  • 찡스 2008/12/03 18:41 # 삭제 답글

    음 답답한 현실이군요
  • NePHiliM 2008/12/09 18:36 # 답글

    아놔 뵤앵 링크 추가했슴 -_-;
    -네피
  • 무혼인형 2008/12/10 09:13 #

    =P
  • 닝조 2012/05/28 19:56 # 삭제 답글

    옳은 말씀이시긴 합니다만 문제 접근과 풀이 모두 잘못되었습니다.
    이대로 컴파일도 되지 않습니다.
    확인 안하셨습니까
  • 무혼인형 2013/03/14 19:45 # 삭제

    gcc 로는 warning이 하나 나오긴 하지만 컴파일되어 결과 값은 다음과 같습니다.
    student # : 0, avr.score : 66.000000
    student # : 1, avr.score : 81.000000
    student # : 2, avr.score : 67.000000

    "학생별로 성적의 평균을 구하" 였고, "2차원 배열의 각 행이 1차원 배열임을 이용" 하였습니다.

    문제 접근과 풀이에 대해 어느 부분이 잘못되었는지 제가 문제의 어디를 잘못 이해 했는지 설명 부탁 드리겠습니다.
  • 지나가던공학도 2014/12/06 15:12 # 삭제 답글

    에러납니다. 확인 부탁드립니다
댓글 입력 영역