2011-02-18 12 views
0

int変数がelse文になると、その内容を削除します。C言語での変数の内容を取り除く

プログラムはscanfを使用して1から5までの数値を要求し、その数値はint変数に格納され、数値が1から5までの間でない場合、ユーザーはelse文に導かれ、gotoステートメントを最初に戻して、私はcontinuosループを作成しないようにelse文の中で変数の内容をどのように削除したのだろうかと思いました。

getcharはfpurge(stdin)です。

が含ま

int型のmain(int型のargc、constのchar型* ARGV []) {

int code; 

開始:私は、Mac OS XのBELOW

を実行していることはコードです:

puts("Please type your error code."); 
puts("Range 1-5: "); 
scanf("%d", &code); 

switch(code) 
{ 
    case 1: 
     printf("INFORMATION\n"); 
    case 2: 
     printf("INFORMATION\n"); 
    case 3: 
     printf("INFORMATION\n"); 
    case 4: 
     printf("INFORMATION\n"); 
    case 5: 
     printf("INFORMATION\n"); 
    default: 
     printf("INFORMATION\n"); 
     goto start; 
} 

}

+3

あなたのコードを投稿して、なぜgoto文を使用しなければなりませんか?この宿題ですか? – GWW

+0

あなたは "int varの内容を削除する"ことによってvarをクリアすることを意味しますか? – tristan

+0

私はそれが嫌なコードだと知っていますが、私はこの質問のためのデモとして使っただけです。 –

答えて

0

はあなたのbreak文を忘れてはいけません!

do 
{ 
    puts("Please type your error code."); 
    puts("Range 1-5: "); 
    scanf("%d", &code); 

    switch(code) 
    { 
     case 1: 
      printf("INFORMATION\n"); 
      break; 

     case 2: 
      printf("INFORMATION\n"); 
      break; 

     case 3: 
      printf("INFORMATION\n"); 
      break; 

     case 4: 
      printf("INFORMATION\n"); 
      break; 

     case 5: 
      printf("INFORMATION\n"); 
      break; 

     default: 
      printf("INVALID CODE\n");break; 
    } 

} while(code<1 || code> 5); 
+0

これを 'スイッチケース'内に実装するにはどうすればよいですか? –

+0

あなたのコードを投稿すれば、人々があなたをより良く助けることができるかもしれません。 – GWW

+0

ああ、そうです。ダークブレークステートメント!ありがとうございます - あなたが言うことができるように、私は文字通り学習曲線にあります。 –

2

ただ、例えば、他の何かにint型の値を設定する:あなたはおそらくやる... whileループ

編集を探している

theValue = 0; 
関連する問題