21 ~3에서 문제가 발생하네요
btwo - '0' 이런식으로 수정해보세요
2588번 - 곱셈
21 ~3에서 문제가 발생하네요
btwo - '0' 이런식으로 수정해보세요
#include
#include
using namespace std;
int main()
{
char aone[4] = {};
char bone[4] = {};
cin >> aone;
cin >> bone;
int c, d , e, f,g;
c = atoi(aone) ; //입력 a
d = bone[0] - '0' ;
e = bone[1] - '0' ; //십의자리
f = bone[2] - '0' ; //일의자리
g = atoi(bone) ;
cout << c * f << endl;
cout << c * e << endl;
cout << c * d << endl;
cout << c * g;
return 0;
}
이게 찾아보니까 atoi 가 문자'열'을 정수로반환시켜주는거라서 단순히 char하나만 바꾸려고하면 쓰레기값이 포함이되어있네요 디버그해보니까
그래서 char to int 단순 변형하는걸로 바꿔서 했더니 잘됩니다.
감사합니다.
댓글을 작성하려면 로그인해야 합니다.
redrosein 3년 전
정수로 받아서 출력하는건알겠지만
저는 왠지 문자 배열로 입력받아서 각 자리수마다 따로 char변수로 집어넣어서
자리수를 나누고 싶어서 이렇게 만들어봤는데요
vs에서 여러가지 세자리 숫자로 테스트한결과 잘나오는데
왜 채점이 안될까요 혹시 cstdlib 쓰면 채점이 안되나요??