c언어 초보가 함수에 대해 질문드립니다
파랑새
c언어 함수에 대해 궁금한점이있습니다질문 요약 :2번째 예문같은경우에는 함수를 int로 주고 1번째예문은 함수를void로 주는 이유가 궁금합니다...
질문 내용 :
1번째예문
#include stdio.h
void sum_avg(int kuk,int eng,int math);
void main()
{
int kuk,eng,math;
printf(국어,영어,수학 점수를 입력하시오.\n);
scanf(%d%d%d,&kuk,&eng,&math);
sum_avg(kuk,eng,math);
}
void sum_avg(int kuk,int eng,int math)
{
int sum;
int avg;
sum=kuk+eng+math;
avg=sum/3;
printf(\n과목 점수의 합=%d,sum);
printf(\n평균 = %d,avg);
}
--------------------------------------------------------------------
2번째 예문
#include stdio.h
int max_num(int i,int j,int k);
void main()
{
int i,j,k;
printf(세 개 의 숫자를 입력하시오.\n\n);
scanf(%d%d%d,&i,&j,&k);
printf(입력받은 세 개의 숫자는 %d, %d, %d 입니다.\n\n,i,j,k);
printf(새개의 숫자중 가장 큰수는 %d 입니다.,max_num(i,j,k));
}
int max_num(int i,int j, int k)
{
int a;
a=i;
if(aj)
a=j;
if(ak)
a=k;
return a;
}
-
개럭시
감사합니다 많은도움이 되었습니다.
-
엘보어
고수님들쩐다
-
민혁
void 함수에서는
return; 만 가능합니다.
1번의 경우에는 sum_avg 함수안에서 모든 것을 처리하고 돌아가기만 합니다.
int 함수에서는
return a; 처럼 정수형을 돌려줍니다.
2번의 경우에는 max_sum 함수안에서 처리만 하고 출력은 main 함수에서 합니다. -
중독된
앞에주는 int나 void나 이걸 리턴형이라고하는데요 보시다시피 중점은 값의 표시를 함수에서 보여줄꺼냐 아님 값을 돌려받아서 메인에서 처리할꺼냐 그차이네요 1번은 함수에서 그냥 처리하는거고 2번은 값을 다시받아서 메인에서 처리하는함수입니다.