• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

age 초기화를 위에서 하면 왜 올바른 값이 나오지않는거죠?

21.10.08 02:43 작성 조회수 118

0

#include<iostream>

using namespace std;

 

int main() {

char a[20];

cin>>a;

int year,age;

age=2021-year;

if(a[7]=='1' || a[7]=='2'){

year=1900+((a[0]-'0')*10)+(a[1]-'0');

if(a[7]=='1'){

cout<<age << " M";

}

else if(a[7]=='2'){

cout<<age << " W";

}

}

if(a[7]=='3' || a[7]=='4'){

year=2000+((a[0]-'0')*10)+(a[1]-'0');

if(a[7]=='3'){

cout<<age <<" M";

}

else if(a[7]=='4'){

cout<<age <<" W";

}

}

return 0;

}

답변 1

답변을 작성해보세요.

0

안녕하세요^^

age=2021-year; 여기를 할 때 지역변수인 year가 운영체제에 따라 0이 아니라 의미없는 값으로 되 있을 수 있습니다.

강지훈님의 프로필

강지훈

질문자

2021.10.11

감사합니다.