티스토리 뷰

본 포스팅은 렉토피아(http://www.lectopia.com) 의 대학 IT 특강 중

정혜경의 C언어 & 기초 자료구조 강의를 수강하는 수강생이 올린 질문글을 토대로 작성하였습니다.



질문.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include<stdio.h> 
void inputdist(double dist); 
void inputspeed(double speed); 
void output(double dist, int hour, int min, double sec); 
 
int main(void
double dist, speed, sec; 
int hour, min; 
 
inputdist(dist); 
inputspeed(speed); 
 
hour = dist / speed; 
min = ((dist / speed) - hour) * 60
sec = (((dist / speed) - hour)*60 - min) * 60
 
output(dist, hour, min, sec); 
return 0
void inputdist(double dist) 
printf("거리를 입력하시오(km단위): "); 
scanf("%lf"&dist); 
void inputspeed(double speed) 
printf("시속을 입력하시오(km/h단위): "); 
scanf("%lf"&speed); 
void output(double dist, int hour, int min, double sec) 
printf("%.2lf km => %d시간 %d분 %.3lf 초 소요됨\n",dist,hour,min,sec); 
return
cs

이렇게 코드를짰는데 디버깅에러가 뜨더군요 함수부선언 호출 정의는 제대로만든것같은데 어디가문제인지 알수있을까요?? 


답변.


네에~ 코드를 보니 void형 함수를 사용하셨군요~~ 
main 함수 안에서 값을 받아와서 사용하려면 로컬 함수에서 값을 return 해주던가 아니면 포인터를 사용해야 합니다. 

예제 첨부해드릴테니 참고해서 공부하세요~~ 열프 즐프~~ 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h> 
 
double inputDist(); 
 
int main() 
double dist = 0.0
 
dist = inputDist(); 
printf("입력받은 값은 %lf 입니다.\n",dist); 
 
return 0
 
double inputDist() 
double dist = 0.0
printf("거리를 입력하시오 : "); 
scanf("%lf"&dist); 
 
return dist; 
cs


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함