C言語を始めて?1か月ほどの者ですが
じゃんけんゲームのソースを見つけ自分のパソコンで実行したところ2点のエラーが出ました 自分ではどこが間違っているのかわからないんですがわかる方教えて頂けませんか?
↓問題のゲームソース
void main(void){
#include <stdio.h>
#include <stdlib.h>
// じゃんけん定数
#define JKN_GOO (0)
#define JKN_CHOKI (1)
#define JKN_PA (2)
// 勝敗の定数
#define TYP_KATI (0)
#define TYP_MAKE (1)
#define TYP_AIKO (2)
// じゃんけんの判定関数
int check( int human, int computer )
{
if ( human == computer ){
return TYP_AIKO;
}
switch ( human ){
case JKN_GOO: return ((computer == JKN_CHOKI) ? TYP_KATI : TYP_MAKE);
case JKN_CHOKI: return ((computer == JKN_PA) ? TYP_KATI : TYP_MAKE);
case JKN_PA: return ((computer == JKN_GOO) ? TYP_KATI : TYP_MAKE);
default: return -1;
}
}
// じゃんけんゲーム
int main( void )
{
// ゲーム変数
int count; // 勝負回数
int kati = 0; // 勝ちカウンタ
int make = 0; // 負けカウンタ
// 一時変数
int human; // キー入力の一時変数(人間用)
int computer; // 乱数発生の一時変数(コンピュータ用)
// (6)じゃんけん勝負を10回行う
printf( "★じゃんけんゲーム(10回勝負)\n\n" );
for ( count = 1 ; count <= 10 ; count++ ){
// (1)人間:3つの状態を入力
printf( "%2d回目…[1]グー [2]チョキ [3]パー を入力して下さい:", count );
do {
// (2)キー入力
switch ( getche() ){
case '1': human = JKN_GOO; break;
case '2': human = JKN_CHOKI; break;
case '3': human = JKN_PA; break;
default: human = -1; break;
}
} while ( human == -1 );
// (3)コンピュータ:3つの状態を乱数で決める
computer = (rand() % 3);
// (4)人間vsコンピュータの勝負
switch ( check(human,computer) ){
case TYP_KATI:
kati++;
printf( "⇒勝ち。\n" );
break;
case TYP_MAKE:
make++;
printf( "⇒負け。\n" );
break;
case TYP_AIKO:
printf( "⇒引き分け。\n" );
break;
default:
printf( "⇒エラー。\n" );
break;
}
}
// (7)結果表示
printf( "\n★じゃんけんゲームの結果\n" );
printf( "人間 :%d 回勝ち\n", kati );
printf( "コンピュータ:%d 回勝ち\n", make );
printf( "※引き分け回数は %d 回でした。\n", (10 - kati - make) );
return 0;
}
}
そしてエラーが
18行目の「{」と32行目の「{」なんですが回答よろしくお願いします><
じゃんけんゲーム
Re: じゃんけんゲーム
コードをタグを使って張り直してください。試せません。
1行目の
void main(void){
はゴミでしょう。
最終行の}もそうかも。
getcheを使うなら、#include <conio.h>
をつけましょう。
1行目の
void main(void){
はゴミでしょう。
最終行の}もそうかも。
getcheを使うなら、#include <conio.h>
をつけましょう。
non