• ベストアンサー

おしえて

C言語のソースのおかしいところ教えてください。 #include <stdio.h> #include <time.h> #include <stdlib.h> main () { int computer; srand(time(NULL)); printf("【ジャンケンゲ―ム】\n"); computer = rand()%3+1;  printf("コンピュータは"); if(computer ==1) { printf("グー"); } else if(computer == 2) { printf("チョキ"); } else {printf("パー"); } printf("! "); return 0; } エラーは エラー E2206 2-3.c 12: 不正な文字 ' ' (0x8140)(関数 main ) エラー E2206 2-3.c 12: 不正な文字 ' ' (0x8140)(関数 main ) とでます。

質問者が選んだベストアンサー

  • ベストアンサー
noname#8342
noname#8342
回答No.1

下記のように修正すれば解決します。 #include <stdio.h> #include <time.h> #include <stdlib.h> int main (void) { /* int computer; srand(time(NULL)); printf("【ジャンケンゲ―ム】\n"); computer = rand()%3+1;  printf("コンピュータは"); if(computer ==1) { printf("グー"); } else if(computer == 2) { printf("チョキ"); } else {printf("パー"); } printf("! "); */ return 0; }

その他の回答 (3)

  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.4

> エラー E2206 2-3.c 12: 不正な文字 ' ' (0x8140)(関数 main ) これはプログラム中に全角の空白「 」があるのが原因です。 printf("の、こういうところ→ の文字列\n");ならば、全角空白は使用できますが、 int computer; を、 int computer; と書いてしまうと、コンパイラは「intの次の記号は何じゃ?」とエラーを出します。 -- Windows付属のメモ帳などでは空白の区別が見えませんので、 TeraPad http://www.vector.co.jp/soft/win95/writing/se104390.html などのテキストエディタを使用するとよろしいです。

参考URL:
http://www.vector.co.jp/soft/win95/writing/se104390.html
  • mnabe
  • ベストアンサー率33% (427/1283)
回答No.3

12行目に、全角スペースが入っている様ですね。 printf の内容以外で、全角スペースがないか確認して見てください。

  • ham_kamo
  • ベストアンサー率55% (659/1197)
回答No.2

computer = rand()%3+1;  この行の最後に全角のスペースが入ってるみたいです。これを消せばコンパイルできると思います。

関連するQ&A