scanf와 엔터

youwlghks Reply 9 years 4 days ago
제 코드를 보시면 맨 처음 a-z를 받을때 scanf("%d", sav[b]); 뒤에 getchar()가 있는데요 이거를 쓴 이유가 이걸 안 쓰면 엔터가 위에 a에 저장이 되어버리네요... getchar로 막기는 했는데 이럴 경우 \n\r이였나 이런거는 에러가 생기기 때문에 찜찜합니다....
pichulia Reply 9 years 4 days ago
do{ scanf("%c",&a); } while(a<'a' || a>'z'); 이런 방법도 있고 scanf("%d ",sav[b]); 처럼 %d 뒤에 공백을 띄워주는 꼼수도 있습니다. 아니면 char aa[2]; scanf("%s",aa); a = a[0]; 이렇게 하는 꼼수도 있답니다.ㅋㅋㅋㅋ