Q&A
解決済
3回答
28593閲覧
総合スコア51
C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。
0グッド
1クリップ
投稿2017/11/11 06:19
0
1
1.int型変数aにデータを1文字入力する 2.aがEOFであれば終了する。 3.aを1文字出力する 4.1.へ戻る
という問題なのですがEOF判定のところがよくわからず解けません助けていただきたいです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
質問へのコメント
回答3件
C1if(a==EOF) { 2 終了する; 3}
C
1if(a==EOF) { 2 終了する; 3}
投稿2017/11/11 08:36
総合スコア86597
ベストアンサー
例えばgetcharで文字を読み込んだ場合、返される文字コードは1バイトですが、戻り値は整数型になっています。 読み込む文字がなくなった場合、getcharはEOF(End Of File)を返します。 EOFは整数の-1で定義されているため、文字コードと区別できるようになっています。
EOFまで処理するコードは以下になります。
C1int c; 2while ((c = getchar()) != EOF) { 3 ほげほげ 4}
1int c; 2while ((c = getchar()) != EOF) { 3 ほげほげ 4}
投稿2017/11/12 01:43
総合スコア815
例えばscanfを用いる場合は、その戻り値を調べればよいです。
戻り値 成功した場合: 代入された入力項目の個数 失敗した場合: EOF
引用元:C言語関数辞典 - scanf
投稿2017/11/11 06:23
総合スコア35680
回答へのコメント
2017/11/11 08:39
2017/11/13 00:18
2017/11/13 03:09
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.29%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
C言語EOF判定について