|
무슨 워닝이 뜨는 것인지 적어 놓지를 않으셨네요..
짐작컨데..
a,t,y,q,w,p 변수중 실제로 사용하는 것은 a 밖에 없기때문에..
나오는 것일겁니다.
각 변수들에 아무값이나 대입하면 아마 없어질것 같군요..
그런데.. 아래 처럼 코딩하실거면..
kim1~3까지의 함수에 파라미터를 만들 필요가 없습니다.
t,y등의 변수가 main에선 아무런 역활을 하지 않고 있습니다.
그럴바에는 각 함수에 지역변수로 만들어 처리하는 것이 좋습니다.
변수통용범위(Scope 법칙)에 대해서 학습이 필요하실겁니다.
김경래 님이 쓰신 글 :
: 밑에 플그램에서 에러는 안뜨는데 워닝이 뜹니다.
: 왜뜨는지를 모르겠습니다.--;;;
: 변수에서 워닝이뜨는데...;;
: 돌아가는데는 별상관없이 잘돌아갑니다만--;;
: 왠지 워닝도 없앴으면 하는 바램이 있네요--;;
: 고수님들 답변 플리즈~
:
: #include <stdio.h>
:
: float kim1(int b, int c);
: int kim2(int d, int e);
: float kim3(int r);
:
: void main()
: {
: int a,t,y,q,w,p;
: printf("1.삼각형의 넓이");
: printf("2.사각형의 넓이");
: printf("3.원의 넓이");
: scanf("%d",&a);
:
:
:
: if (a==1)
: {
: kim1(t,y);
: }
: else if (a==2)
: {
: kim2(q,w);
: }
: else if(a==3)
: {
: kim3(p);
: }
: else
: {
: printf("번호를 작못 입력하셨습니다");
: }
: }
:
: float kim1(int b, int c)
: {
: float a;
: printf("밑변의 길이를 입력해주세요");
: scanf("%d",&b);
: printf("높이의 길이를 입력해주세요");
: scanf("%d",&c);
: a=0.5*b*c;
: printf("삼각형의 넓이는? %f",a);
: return a;
: }
:
: int kim2(int d, int e)
: {
: int f;
: printf("가로의 길이를 입력해주세요");
: scanf("%d",&d);
: printf("세로의 길이를 입력해주세요");
: scanf("%d",&e);
: f=d*e;
: printf("사각형의 넓이는? %d",f);
: return f;
: }
: float kim3(int r)
: {
: float g;
: printf("반지름의 길이를 입력해주세요");
: scanf("%d",&r);
: g=3.14*r*r;
: printf("원의 넓이는? %f",g);
: return g;
: }
: 즐거운하루되세요
|