:: 게시판
:: 이전 게시판
|
이전 질문 게시판은 새 글 쓰기를 막았습니다. [질문 게시판]을 이용바랍니다.
통합규정 1.3 이용안내 인용"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
12/06/12 20:55
일단 문장들의 배열이 있어야겠죠... 데이터로 직접 입력해도 돼고, 텍스트 파일을 줄 단위로 읽어서 배열에 저장해놔도 좋을겁니다.
그다음에 rand()를 이용해서 0~문장개수 까지의 난수를 생성하고, 배열에서 해당 문장을 출력해주면 될 듯 합니다.
12/06/12 21:57
사실
int a = 1 int b = 2 형태로 사용하는 것과 int[] a = 1, 2 ;
라고 사용하는것을 크게 다르게 생각하실 필요 없습니다. 단지 데이터가 서로 연관성이 있어서, for loop 를 돌면서 탐색해야 되는 데이터의 묶음 등을 저장할 때 편하기 쓰기 위해서 배열을 쓰는거죠. 따라서 어렵게 생각하지 마시고, 일단은 차근차근 생각의 순서를 세우세요. 1. 배열의 선언 2. 배열 안에 데이터를 넣는다. (1,2번은 같이 해도 되구요) 3. 사용자에게 특정 단어를 입력 받는다. 4. 단어를 입력 받고, random 한 숫자를 생성하되, 배열의 범위가 넘어가지 않도록 한다. 5. 생성해낸 숫자를 이용해 배열에 접근한다. 끝. 이 되겠죠. 중간에 어떻게 하는지 모르겠는 방법은 google 로 검색하시면 되는겁니다.
12/06/12 22:40
2차원 배열을 쓰세요.
예를들어 myStatement[2][40]= "Hello World", "How do you do"
이렇게 선언하면 myStatement는 두 문장을 표현할 수 있습니다. 각 문장은 최대 39자까지 저장하능하게 되죠. (40번째는 null코드가 들어가서 문장의 끝을 가리켜야함) 이를 확장하면 원하는 만큼 문장을 미리 준비해놓을 수 있습니다. 나중에 쓸 때는 printf("%s\n",myStatement[rand()]); 하면 rand함수에 의해 정해진 index의 문장이 출력되겠죠. random seed가 문장 개수를 넘지 않도록 잘 정해놔야합니다. 안그럼 실행에러가 뜹니다.
|