#include<stdio.h>
#include<stdlib.h>
int main()
{
int i;
char a[19];
for(i=0;i<=18;i++)
{
scanf(\"%c\", &a[i]);
}
for(;i>=0;i--)
{
printf(\"%c\", a[i]);
}
return 0;
}
이 소스를 컴파일해서
a b c d e f g t y f까지 치고 엔터를 누르면 앞에 느낌표 두개가 뜨고 출력이 나오네요
!!f y t g f e d c b a 이렇게요
이 느낌표 두개는 왜 뜨는 건가요??
전 물음표 하나 뜨는데
대충 i 값이 님 예상보다 하나 크기 때문에 쓰레기 하나가 출력될 꺼라고 예상했는데 !! 두개뜨는건 몰겠네요
stdlib.h 는 참조시킬 필요없음.. a b c d e f g t y 한뒤에 엔터 두번 누르니 제대로 출력됨 y 뒤에 f 까지 하면 좀 이상해짐.. 아마 배열에서 잘못된거 같은데.. 그냥 이대로 살고 나중에 malloc 배워서 malloc 으로 배열 지정해준 후에 해주면 제대로될지도
저런식으로 하면 19개가 자체도 제대로 다 입력안될껀데 ㅇㅇ fflush(stdin);쓰거나 해서 버퍼 지워야 제대로 입력되고 예상되는 값 나올거같은데?
뀨잉뀨잉...일단 오늘은 자야겠다 ㅠ
y까지 입력받고 그다음 공백이 저 반복문의 끝인데 하나 더 입력받아서 \" f\"
가 출력된거지 원래는 \' \'와 \'f\'가 따로 출력되어야 하는데