그거 참 이상하군요...
도도
질문 제목 :
word[a]에 for()문으로 word[a]에 계속적으로 scanf하는데 나중에 printf(%s, &word[a]);하는데 왜 [a]갯수대로 ㅍprintf될까요?
--
질문 내용 :
#include stdio.h
double word[10], time[2];
int a, astop, b;
main()
{
/*(중략...)*/
{
printf(USER\t);
for (a=0;a10;a++)
{
scanf(%s, &word[a]);
if (word[a] == (.||?||!||..||...))
astop = a;
break;
}
printf(COM\t);
/*컴퓨터가 할 말을 결정하는 부분.*/
{
/* (중략할까요?)*/
}
/*컴퓨터가 할 말 결정 끝.*/
for (a=0;a(astop-1);a++)
{printf(%s , &a);}
printf(/*(중략.......)*/);/*****************************************************************/
printf(\n);
/*(중략..)*/
}
}
------
이걸 실행하면
좀 어이가 없네요..
단어를 입력한 갯수만큼의 줄이 출력되요..
왜 그럴까요?
어떻게 하면
(ex
USER 오늘 힘들었어...
COM 어제는 뭐했어?
)
실제로는 안 그러고요...
COM NULL 는 뭐했어?
는 뭐했어?
---------
참고로 저는 Dev-c++를 씁니다.
-
마음새
음.. 그래도 여전하네요...
조금 바꾸긴 했지만
그래서 수다님의 답은 필요없게 되었네요..
그런데 이제는 이럽니다.
입력한 단어 갯수대로
com 그래서?
user com 그래서?
이럽니다.
물론 그래서?는 제가 정의한 것이지만...
이상합니다. -
다온
word[a]에 문자열을 입력받으시려면,
double word[10]; 으로 정의하실 것이 아니라,
char word[10][최대문자열길이+1]; 로 정의하세요. -
주리
printf(\%s \