/* janken.c Function: じゃんけんゲーム Author: Ken Date: 02/05/25 URL: http://blue.ribbon.to/~kenweb/ mail: kenweb@s8.xrea.com */ #include <stdio.h> #include <stdlib.h> /*乱数を発生させる関数が入っている*/ #include <time.h> /*乱数初期化時に必要*/ int main() { int user=0,cpu=0,win=0,lose=0,cont=0,hantei=0,aiko=0; /*変数宣言*/ fprintf(stdout,"じゃんけんゲーム!\n\n"); while(1) /*じゃんけんプログラムループ内*/ { if ((hantei==-2||hantei==1)&&win>=2) fprintf(stdout,"只今あなたの%d連勝中です\n",win); if ((hantei==2||hantei==-1)&&lose>=2) fprintf(stdout,"只今あなたの%d連敗中です\n",lose); user=0; srand((unsigned)time(NULL)); /*←乱数初期化*/ /*CPUの入力(乱数)*/ while(user>3||user==0) { cpu=rand() % 3; /*←乱数の発生*/ if (aiko==1) fprintf(stdout,"あいこでしょ! (1:グー 2:チョキ 3:パー)\n"); else fprintf(stdout,"\nじゃんけんぽい! (1:グー 2:チョキ 3:パー)\n"); fscanf(stdin,"%d",&user); /*ユーザーの入力*/ aiko=0; } user = user-1; fprintf(stdout,"あなた:"); /*出力*/ if (user==0) fprintf(stdout,"グー\n"); else if (user==1) fprintf(stdout,"チョキ\n"); else if (user==2) fprintf(stdout,"パー\n"); fprintf(stdout,"CPU:"); if (cpu==0) fprintf(stdout,"グー\n"); else if (cpu==1) fprintf(stdout,"チョキ\n"); else if (cpu==2) fprintf(stdout,"パー\n"); hantei=cpu-user; /*勝ち負け判定*/ if(hantei==1||hantei==-2) { fprintf(stdout,"あなたの勝ちです!!\n\n"); win=win+1; lose=0; } else if(hantei==2||hantei==-1) { fprintf(stdout,"残念。あなたの負けです。\n\n" ); win=0; lose=lose+1; } else if(hantei==0) aiko=1; if (hantei>=1||hantei<=-1) /*ゲーム再開*/ { fprintf(stdout,"まだ続けますか? (YES:1 NO:0)\n"); fscanf(stdin,"%d",&cont); system("cls") ; if (cont==0) break; } } return(0); }