숫자 야구게임#include <stdio.h> #include <stdlib.h> #include <time.h> void set_game(int *arr); void input_num(int *u_arr); int compare_num(int *arr, int *u_arr); int main(void) { int arr[3]; int u_arr[3]; int valid=0; int p; set_game(arr); for(p=0 ; p<3 ; p++) { printf("%d%c",arr[p], p==2 ? '\n\n' : ' '); } while(valid != 1) { input_num(u_arr); valid = compare_num(arr,u_arr); if(valid==1) printf("***정답입니다***\n"); } return 0; } void set_game(int *arr) { int i; srand(time(NULL)); for(i=0; i<3; i++) arr[i] = rand()%10; printf("GAME START!!\n"); } void input_num(int *u_arr) { int i; int input; for(i=0; i<3; i++) { printf("입력하세요(%d번째) >>",i+1); scanf("%d",&input); if(input < 0 || input > 9) { printf("다시 입력하세요\n\a"); i = i-1; }else u_arr[i]=input; } } int compare_num(int *arr, int *u_arr) { int i,j; int s_cnt=0,b_cnt=0; int es=0; for(i=0; i<3; i++) for(j=0; j<3; j++) if(arr[i]==u_arr[j]) if(i==j) s_cnt++; else b_cnt++; else continue; if(s_cnt >0) printf("\n[%d strike]\n\n\n",s_cnt); if(b_cnt > 0) printf("\n[%d ball]\n\n\n",b_cnt); if(s_cnt==0 && b_cnt==0) printf("\n[3 out]\n\n\n"); if(s_cnt==3) es=1; return es; }