제발 부탁드리겠습니다 도와주십쇼
제가 구현하고싶은건
C언어에서
예를들면
char a[1000]={0,}; 이 있으면
scanf 함수로 a에 여러가지 숫자를 대입하고 싶습니다
예를들면
1 2 3 1 2 4 5 7 8 9 이렇게 말이죠
하지만 안타깝게 scanf 함수는 공백이 포함되버리면 공백 앞에서 끊겨버리게 되는데
1 2 3 1 1 4 5 8 9 이렇게 입력만하면
char a[1000]에 저장될수 있도록 하는 방법이 있나요?
(char a[0]= 1 , char a[1] =2, char a[2]=3, char a[3]=1, ... 등)
제발좀 알려주십쇼
gets(s)
아 잘못썻다 gets(a);
gets 는 문자열로 처리되버려서 하면안됨 1 2 3 4 이렇게 공백을 포함하면서 atoi 함수로 변환이 안됨
대신 이거쓰면 띄어쓰기도 들어감 ㅇㅇ
222.113 << 토큰을 구현하면 되지 어렵냐그게
포문으로 scanf &a[i] 못함? 백준할때 그렇게 했는데
나도 이렇게 할거같음
포문 으로 scanf 하는방법은 뭐야? 좀알려줘라
해당 댓글은 삭제되었습니다.
예를들면 gets 함수로 스트링으로 받았다 치자 1 2 3 4 그리고 이 사이에 있는 공백을 어떻게 없애줌? 또 따로 배열선언해서 거기에 넣어?
for문으로 scanf 받는방법 혹시 아시나요??
예를들면 두자리수면 어떻게함? 1 2 3 10 11 12 이렇게 입력했다치면 a[0]=1 a[1]=2 a[3]=3 a[4]=10 .. 등등 이렇게 들어가야되는데 아에 문자열로 되버려서 a[0]=1, a[1]=2, a[3]=3,a[4]=1, a[5]=0 이렇게 대입되버리지 않음??
아니 gets로 받았으면 한글자면 0,2,4,6,8 인덱스에 숫자들어있을거고 두자리수도 들어간다면 띄어쓰기 있을때까지만 char에 다시 넣고 atoi돌려
넣을 때, 공백을 빼이놈아
난 꼭 공백을 넣고싶음 대입할때 햇갈림
scanf("%[^\n]s", a);
문제 해결했으면 고맙다는 인사를 좀 해라.
아직 해결이 안됐음 생각중임
내가 알려준 대로 했는데도 공백을 못 알아듣는다고?
난 분명 답을 다 알려줌 나머진 코드화 시키기만 하면 되는일임
공백 포함한채로 입력이 되긴하는데 그거말고 궁금한게 문자열로 된 숫자들을 다시 숫자로 바꿔서 저장하고 싶음 예를들어 1_11_2_3 이 있으면(공백은 _로 표현) char a[100] = {0,}에다가 a[0]=1; a[1]=11; a[2]=2; a[3]=3 이렇게 저장할라면 어떻게 짜야될까?
어쩃든 답변고마움
int main(){ char a[100]; scanf("%[^\n]s", a); printf("%s\n", a); } $ gcc a.c; ./a.out; 하면 끝인데 뭘 생각하고 말고를 해?
내가 글 새로 쓸테니 그것좀 읽어줘
https://gall.dcinside.com/board/view/?id=programming&no=1084506
https://gall.dcinside.com/board/view/?id=programming&no=1084506