error C2047が消えません

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ヨモギよしあき

error C2047が消えません

#1

投稿記事 by ヨモギよしあき » 9年前

c言語で7*7の升目を移動するプログラムを作っています。
メモ帳に書き込んで、visual studio 2010 コマンドプロンプトでコンパイルしています。
68行目で「error C2047: 'default' が正しくありません。」と出ます。

http://msdn.microsoft.com/ja-jp/library ... 80%29.aspx
にある
default キーワードは switch ステートメントの中だけで使用できます。
等も参考にしましたが、全く解決しません

学校で習った関数を使い復讐替わりでやっているので全くの初心者です。



コード:

 
#include<stdio.h>
#include<stdlib.h>

int main(void){

 int zahyo,map,koudou;

 zahyo=0;
 koudou=0;

 printf("操作方法\n");
 printf(" 8     ↑      9  \n");
 printf("426  ←↓→  終了\n");

 while(koudou<9){
   map=0;
  
   while(map<49){
     if(map==zahyo){
        if(map%7==6)
          printf("●\n");
        else
          printf("●");
     }else{
        if(map%7==6)
          printf("□\n");
        else
          printf("□");
     }
     
     map++;
   }
   
 
   while(2<3){
     printf("どっちに行きますか\n");
   
     scanf("%d",&koudou);
  
     swich(koudou);{
       case2:
         if(zahyo<7)
           break;
         else
           zahyo=zahyo-7;
           break;
       case4:
         if(zahyo%7==0)
           break;
         else
           zahyo=zahyo-1;
           break;
       case6:
         if(zahyo%7==6)
           break;
         else
           zahyo=zahyo+1;
           break;
       case8:
         if(zahyo>41)
           break;
         else
           zahyo=zahyo+7;
           break;
       case9:
         break;
       default:
         printf("もう一度入力\n");
     }
   }
 }

 printf("終了します");
 exit(0);



}

YuO
記事: 947
登録日時: 13年前
住所: 東京都世田谷区

Re: error C2047が消えません

#2

投稿記事 by YuO » 9年前

41行目,)と{の間に;が含まれています。

アバター
Tatu
記事: 445
登録日時: 13年前
住所: 北海道

Re: error C2047が消えません

#3

投稿記事 by Tatu » 9年前

1.switchがswichになっています。
2.switch()の後ろに;はつきません。
3.case 2:のようにcaseと数値の間を空けてください。

本やサイトなどでC言語の文法を学ぶことをおすすめします。

ヨモギよしあき

Re: error C2047が消えません

#4

投稿記事 by ヨモギよしあき » 9年前

返信ありがとうございます
;を抜いたところ


masume.c
masume.c(40) : error C2143: 構文エラー : ';' が '{' の前にありません。
masume.c(67) : error C2047: 'default' が正しくありません。


と出ます
自分でも意味が分からず、とりあえずエラー出たから;を付けてみました

ヨモギよしあき

Re: error C2047が消えません

#5

投稿記事 by ヨモギよしあき » 9年前

解決しました
ありがとうございました
原因は「swich」でした
今度からは、きちんとスペルも注意します
caseの後にスペースを入れなかったのは「swich」の状態の時に、
コンパイルして、全てのcaseに対しエラーが出たため、スペースを外してみたところ、エラーが出なくなったためです。
独習cあたりでも買い、もう少し勉強します。

閉鎖

“C言語何でも質問掲示板” へ戻る