2025年09月24日 第2回

  1. 今回はコピペをせずに資料も見ずに自分の力でコマンドを入力してみました.
    やはり慣れていないため;を忘れたりしてしまいましたが,
    印象づき,
    力になったので良かったです.
    これからもスライドを見ずに自分の力だけでできるように精進していきたいです.

    スライドは見てよいと思いますよ.

  2. 問題なく課題のコードを書くことができた.
    課題5,6,7では,
    改行文字もほかの文字と変わらない一つの文字であることを意識してgetcharを扱うことができた.

    出来たのであれば良いですね.

  3. C++ の入出力ストリームに慣れてしまったためCの入出力の記述が面倒に感じてしまう.
    克服したい.

    どちらもできるようになるのが得なのでは?

  4. 本日の演習で,
    キーボード入力の方法を学んだ.
    getcharはそれ以前に入力があったときにはその改行文字を読み取ってしまうため,
    scanfや別のgetcharと組み合わせるには改行文字を消去する工夫が必要となる.
    今までは,
    getcharを単体でしか使ったことがなかったため,
    この仕様を知ることができなかった.
    今後は,
    こういった仕様にも気を付けてコードを書いていく.

    今後はあまり使うことはないかもしれませんが,一度はやるようにしたほうが良いでしょう,

  5. scanfとgetcharの違いを理解することでスムーズに課題を進めることができた. 課題の中ではじめgetcharを2つ続けて入力することに疑問をもったが改行(エンターキー)も一つの文字だとよく理解できた.

    素晴らしい.

  6. 今回は変数の宣言や代入などについて学び,
    実際に使いました.
    まだ,
    C言語の序盤だけど%dや%fなどどっちがどっちだか忘れてしまうことが多かったので何度も練習しながら慣れていこうと思いました.
    また,
    ただ入力した内容を表示するのではなく,
    後からキーボードで入力した内容に合わせて表示する内容に付け加えたり変更したりすることが出来たので幅が広がる感じがして楽しかったです.

    確かに慣れですね.

  7. 今回の授業もありがとうございました.
    今回変数について学んだおかげで前回の内容のpirntfの後ろで内容を決定する(printf("%c", ch))のありがたみがわかりました.
    5回目以降からどんどん難易度が上がるとおっしゃっていたので,
    どきどき反面恐ろしいです.
    この授業を通して,
    「C言語出来ますよ顔」になれるように頑張ります.

    5回目くらいだと思います.
    Lesson 12までありますが,ただ,これらができたと言っても基本的なので,
    どうでしょうかね.

  8. getcharを理解せずに,
    適当に入力していたらうまくいかなかった.
    その後,
    getcharの数を変える試行錯誤をしてうまくいっただけであって,
    なぜうまくいったかわかっていない.

    何ごとにしても,適当は良く無いかも.

  9. 前回と違って課題をやるのにとても時間がかかってしまった.
    getcharの使い方がうまく理解できていなかったので復習したい.

    復習は大事ですね.

  10. 課題7で1番目の文字を取得するときだけgetcharが一回で済んだのかわからなかった

    不明であれば質問にきてください.

  11. 今回は,
    変数について触れました.
    前回よりも書く内容が増えて,
    打ち間違いなどのミスが多発してしまいました.
    そのため,
    書いた内容をよく確認しながら,
    授業に取り組んでいきたいです.

    打間違いもコンパイル時でわかるものであれば,対応は楽ですね.

  12. 今回の課題は後半が難しく,
    前回よりも時間がかかってしまった.
    4,
    5回目でさらに難しくなると聞いたので怖いです.
    さらに成長できるように頑張りたいです.

    演習を続ければ問題なくクリアできると思いますよ.

  13. 今回の内容は,
    多少難しい箇所があったがまだいける内容であった.
    次回以降から難易度が上がっていくとのことなので,
    しっかり予習してこようと思う.

    期待してますよ.動画を見てくださいね.

  14. 今回の演習では,
    課題を与えられたときにいきなりコードを書き始めるのではなく,
    どのような入力がされるのか(ユーザーにどのような入力をしてほしいか)を考え,
    逆算してプログラムを組むことの大切さを学ぶことが出来た.

    素晴らしい.期待できますね.

  15. 今日の授業も楽しかったです.
    自分はタイピングが遅くはないほうなので書く内容が多くても苦ではありませんが,
    タイピングが苦手だったらこの授業は大変だったと思います.
    焦るとミスタイプが出るのでブラインドタッチの精度を上げていきたいです.
    プログラミングでは多くのコマンドを覚えなくてはいけませんが,
    使っていないと忘れるものなので,
    復習をこまめに続けようと思います.

    そうですね.復習も大切ですね.

  16. 今日は最後の二つに苦戦しましたがスムーズに終わらせることができました.
    また,
    やってて思ったのですが,
    ところどころ日本語のところが同じような意味なのに別の言い回しになっていたり,
    最後の部分が「:」からいきなり「.」に変わったりとコピペ対策が暗になされているのではないかとか思いながらやりました.
    できるようになることで,
    達成感を味わえて授業が面白いです.

    コピペ対策ではないですね.

  17. 本日の演習は前回に比べて少々難易度が上がっていました.
    しかしテキストを見ながらだと出来たので本日の復習を交えつつテキストを覚えて次回に臨みたいです.

    今日もそれほど難しくはないと思いますよ.

  18. getcharによる文字の入力が今日の演習問題では最も難しかった.
    標準入力バッファに残っている改行文字のスキップのためにgetcharを2回入力しなければならない部分や,
    scanfとは入力の方法が違っているところも含めて,
    次に使うときに間違えてしまわないように気を付けておこうと思った.

    慣れだと思います.

  19. スペースや改行に気を遣うの大変だった.

    気を遣う必要はないと思いますが,出力をどのようにするかは,
    整形するかはできるようになっておいた方が良いでしょう.

  20. 課題4では最後の出力の文で「"%d は10進数では %d です.\n%d は16進数では %x です.\n%d は8進数では %o です.\n", num,num,num,num,num,num);」とnumを6回続けて書くという野蛮なことをしてしまったのでもう少しエレガントな書き方があればなと思いました.

    これで良いと思います.

  21. 講義で何となく理解していたが,
    演習では何を行うためにそのコードを書くのかしっかり考えながらできた.
    まだ覚えきれていないこともたくさんあるので難しくなる前に身に着けたい.

    素晴らしい.

  22. 今回は変数の型や宣言,
    変換,
    アドレス演算子など様々な概念を扱った.
    これらはかなりが自分の慣れ親しんできたPythonとは異なり,
    一見非常に面倒に感じられるが,
    このようにあえて毎回区別するからこそ得られる恩恵があることを踏まえ,
    ぜひどんな言語であってもある程度自由に使いこなせるようにしたい.

    楽な言語で慣れてしまうと後が大変ですね.
    世の中の全てがデータサイエンスとかじゃないですし.

  23. 標準入力から入力を受け取って変数に格納する方法は理解できたが,
    ひらがななど想定と異なる入力が与えられた時の挙動がよく分からなかった.

    分からない場合は質問してください.

  24. 内容としてはそこまで難しくなかった.
    課題5の「区切り文字のスペースが2つ以上あると,
    上のソースコードが上手く動きませんが今回はこれで良しとする」という文言について何のことかよくわからなかった.

    もう少し工夫の余地があるという意味ですが,次回説明しましょうかね.

  25. 何気に一番最初の問題の変数名を訂正する問題は少し気づくのに時間がかかった.
    ArcorderでC++を勉強しているがcinと入力の仕方が少し異なったので違いが面白いと思った.
    getcharの改行文字の削除など扱いが少し難しかった.
    これからさらに難しくなるらしいので予習をより大切にしていきたい.

    今回はこのような入力方法も一度経験しておこうという程度なので,
    あまり気にせずで良いと思います.

  26. 前回の授業から一週間空き,
    再び標準出力に触れることで知識の定着を確認することができた.
    getchar 関数の使い方に関して,
    連続して使用すると改行文字が入ってしまうという注意点があることは理解できたが,
    なぜそのような問題が起こるのか疑問に思った.
    浅いコードばかりを書いている私からしてみれば,
    このような仕様は面倒なだけにしか思えないが,
    実際には深い理由や歴史的経緯などがあるのだろうか?

    そのような仕様になっているからなのですが,
    良いコメントですね.次回触れようかなと思いますが,
    C言語自体にある意味歴史的な経緯があるようです.

  27. getcharを使用する際に空白除去の為2回書いていたことに対し,
    最初は理由が分からなかったが進めていくうちにその手前の入力で打ったエンターキーが文字として反映されてしまうという理由に気付けて納得がいった.
    予習でテキストを読んでいる時には気付けなかったことだから課題を通して知ることが出来てよかった.

    getchar() のバッファ処理の仕様によるものなので,確かに複雑ですかね.

  28. 課題5以降で,
    getchar()を2回使用する理由がコメント文だけではわからなかったため,
    調べてみました.
    文字を入力してEnterを押したときに改行文字(\n)が入力され,
    それが変数に格納されてしまっているからと知り,
    納得しました.

    バッファに入っているということですね.
    どのように調べたのか気になりますが,いずれにしてもよろしいと思います.

  29. 前回同様理解するまでが時間かかるが理解した後はかなり速く進められた.

    その通り,理解は大切ですね.

  30. 空白を入れるかどうかで出力結果が変わるのがわかった.

    理解できたようで良かったと思います.

  31. 空白があるかないかで正しく実行されるかどうかが変わってしまったので,
    細かいところまで気を付けなければいけないと思いました.

    でも,できましたよね.

  32. 今日はかなりスムーズに作業を進めることができた.
    今回の課題には前回学んだ8進数や16進数が必要だったように今後の課題をするためにはそれまでの知識をすべて理解できていないといけないと思った.
    コード自体は忘れても,
    調べられるようにそういったものがあったという風に覚えておくことが重要だと感じた.

    素晴らしい.この調子でお願いします.

  33. 今回の授業では,
    getchar(); を使って改行文字を除去するとき,
    主に"ch1=getchar ();"のようなコードが使った.
    このようなコードを二回目使ったら第一回の結果を上書きできる.
    しかし,
    直接"getchar ();"を使ってもできる.
    この場合には,
    入力した改行文字や文字などはどこにいますか?

    入力された情報は捨て去られてしまって,どこにも保存されない状態になると思います.

  34. getcharの使い方を理解するのに苦労した.
    改行文字を気にする必要があると感じた.

    一度はやっておくと良いと思います.

  35. int の変数をgetcharで受け取ろうとして,
    思ったように動かなかったので次から気をつけようと思った.

    最終的にはうまく動きましたかね.

  36. 課題6をgetchar だけを用いてコードを作成する問題だと勘違いしてしまい,
    時間がかかってしまった.
    しかし,
    そのおかげでgetchar とscantの使い分けをより深く理解することができた.

    素晴らしい.

  37. getcharの使い方がとても難しかった.
    原理を理解しきれなかったので次までに調べて学んでおきたい.

    不明なところは聞いてください.

  38. 今回の講義では標準入力について前回よりも深く学ぶことができた.
    課題7を最初にコンパイルした時は改行だけ出力されて困ったが,
    課題5とは違って前にscanfを行っていないため改行を最初に除去する必要がない(この解釈が正しいかはわからないが)ということに気づき,
    修正することができた.
    次回以降の演習ではこのようなミスが起こらないように考えてからコードを書いて一発で正しく書けるようにしたい.

    あっていると思います.
    それよりも気になったのは,一発でなくても最終的に正しいものであれば問題ないので
    焦らずにやるようにしてください.

  39. 今回も新しく学んだコマンドを使って課題に取り組むことができた.
    次回もこの調子で頑張りたいと思った.

    素晴らしい.この調子を維持してください.

  40. 数字に対してもgetcharを適用しようとしていたためてこずってしまった.charは文字(character)を表していることを忘れないようにする

    慣れとうか落ち着いて考えたら理解できていると思いますよ.

  41. 本日は前回より課題の量が増えていて時間がかかってしまった.
    次回はもっと早く作業を進められるよう予習と復習をしっかりしたいと思った.

    焦らずやるようにしてください.

  42. 第5回から一気に難しくなると聞き,
    少し心配になった.
    第5回以前の比較的基礎的な内容をしっかりと復習しておきたいと思った.

    第5回ぐらいからです.

  43. 何度かコードを手で入力するうちに,
    だんだん考えることが減っていった.
    今後も数を重ねて,
    スピードと正確性を上げつつ,
    新しい知識を学んでいきたい.

    そうですね,正確さも重要ですね.

  44. getcherの使用において,
    1文字しか取り扱えないという点から改行文字などの取り扱いに気を付けなければならず,
    2度使わないと入力できないなどの問題が発生して少してこずった.
    最終的に理解はできたがgetcherを使うメリットはあまり感じられなかった.

    でも理解できたのですから,頑張った甲斐があるというものですね.

  45. 今回の講義では変数について学びました.
    printf("$")とgetchar()の順番を間違えていて,
    表示が違うことにてまがかかりました.
    今回の講義内の演習でそのことを学べて,
    よかったです.

    落ち着いてやれば問題ないでしょう.

  46. getcharによる文字の入力するプログラムが難しかった.

    できましたか.

  47. 前回に比べて難しく感じた.
    時間がかかってしまったが時間をかけてでもゆっくり理解しながら進めていきたい.
    また毎授業1週間のブランクが開いてしまうので,
    記憶を保持したまま取り組むために授業以外でも積極的にC言語に触れていきたいです.

    そうですね.それが良いです.早くやって間違えるよりも, じっくりやって正しいほうが重要です.

  48. 今回の演習では,
    変数の使い方を理解することができました.
    変数をいくつか使う際に,
    宣言していない変数を勝手に使い始めることのないように注意したいと思いました.
    また,
    文の最後にセミコロンを書き忘れてエラーとなってしまうことが多かったので今後気を付けたいです.

    エラーと言ってもコンパイルエラーなのでね.

  49. 今回の講義では変数について学びました.
    個人的には,
    scanfとgetcharの違いで,
    改行文字をどう扱うのかについて理解するのに時間がかかってしまいました.
    提出するときの質問なのですが,
    letusには文字コードと改行コードについて大学の環境に合わせるようにとありましたが,
    第1回では何も考えずに提出してしまっていました.
    ですが,
    後で大学のlinux環境に前回の課題を転送して確認してみたところ,
    文字コードも改行コードも指定されていたのと同じで問題なさそうでした.
    私はubuntuを使って課題のコードを書いているのですが,
    指定されていた改行コードや文字コードと変わってしまうことはあるのでしょうか.

    ubuntu ではどのようなeditor を使って,そのeditorでどのように設定していますか?

  50. 今回の授業では少しgetcharの扱いに詰まってしまうところがあった.
    実際にコードを実行してみて,
    scanfやgetcharなどで入力を確定させるときはEnterを押しますが,
    Enterを押すことで次回getcharで文字を取得する際に前回入力したEnterが残ってしまうということが分かった.

    いろいろと試していたようですね.理解できたようで素晴らしいです.

  51. getcharで拾って欲しい文字を拾ってもらうのに少し苦労した.
    %cなどの前に空白を入れて改行を読み飛ばすというのも失念していて時間を取られた.

    うまく行きましたか.

  52. 日本語の文章をタイピングする時に比べてタイピング速度が落ちてしまってるのでより速度を上げてスムーズに課題を進めていきたい.
    これから多くのコードを使うことになると思うのですが,
    使い続けたら勝手にコードの役割や使用する位置を覚えれるものなのでしょうか.

    ある意味慣れだと思うので,できるようになると思いますよ.

  53. 本日の講義では,
    変数の設定や入力の方法について演習問題を通して理解を深めることができた.
    scanfに関してはもとから知っていたがgetcharでの文字入力は知らなかったので知れてよかった.
    getcharの文字の入力方法がまだ完全に理解しきったわけではないので,
    今後の演習を通して扱えるようになりたい.

    一度はやっておくと良いでしょう.

  54. 変数には型があり,
    変数を宣言するときにはあらかじめ型を指定する必要があることを理解しました.
    また,
    キーボードから入力を受け取るにはscanfやgetcharなどの関数が使えると理解しました.
    scanfで文字を受け取る際,
    %cの手前のスペースがあるとうまくいくのですが,
    スペースを省くとうまくいきません.
    スペースを省いた際には文字の入力が受け付けられず,
    勝手に改行が入力されてしまいます.
    これはなぜでしょうか?

    前の入力 (質問対象の部分の上にあります)での改行がバッファに残っているので, スペースによって,それを読み飛ばすための工夫(と言って良いと思います)です

  55. 書き写すだけであってもスペースをいれなかったり1とlを見間違えたりとミスをたくさんしてしまったので,
    色々なコードを書いて慣れていきたい.

    そうですね.慣れが重要ですね.

  56. 普段からPythonをやっているため,
    変数の型を宣言する必要があるのが少し面倒に感じた.
    しかしそれもまたC言語をやっているという感じがして少し趣を感じた.
    また,
    Pythonではなぜ同じ変数に異なる型を代入することができるのか気になったため,
    調べてみようと思った.

    Pythonでは,変数は型を持っていないからですかね.代入されたものには型があると思います.

  57. 今回は基本的な文字の入力を学習した.
    改行文字も1つの文字だとしっかり認識できたが,
    思った以上につまづいてしまったのでこれからも頑張っていきたい.

    落ち着いて考えれば問題ないと思いますよ.

  58. getcharコマンドの使い方が課題5を通してなんとなくどのように使うのか理解することができました.
    しかし,
    まだコマンドの知識はあいまいなので詳しく調べようと思いました.

    そうですね.調べてみるのが良いですね.

  59. 今回は数値や文字(キーボード)の出力について学びました.
    構造が分かりやすかったので,
    まだ簡単に終わらせることができました.
    getchar()についてですが,
    その必要性があまり分からなかったです.
    キーボードを1文字だけ入力する機会というのは今後あるものなのでしょうか?

    良いコメントですね.1文字を入れるというのは,どちらかを選択するとかがありますね.機会はあると思います.

  60. 今日も楽しかったです.
    質問なのですが,
    整数型のintは8進数も16進数も,
    他のn進数でも出力を指定すれば出力できるのですか?

    コンピュータなので,任意のnができるようにはなっていないと思います. 10進,16進,8進数ですね.

  61. 課題の量が前回よりも多かったがプログラミングに慣れてきたおかげでより早く終わらせることができた

    よろしいと思います.

  62. 今回はscanf()とgetchar()を用いた,
    値の入力を扱いました.
    今回も特に支障なくこなすことができました.
    1点だけ気になったのは,
    課題5で文字を行区切りで入力したときはgetchar()を1文字につき2回(改行や空白分のためというのは分かっています)使用する必要がありましたが,
    課題7では1文字目については改行分のgetchar()が必要なかったので,
    そこの部分だけ理由が気になりました.

    先頭はなにもバッファに入力されていないからでは?

  63. 今回の演習ではそこそこ時間がかかってしまったが,
    課題一つ一つに長く躓くことなく終えられたのでよかった.
    今後難しくなるということで不安も大きいが,
    授業外に課題を取り組む時間が長引いてしまったとしてもしっかりやり遂げようと思う.
    また,
    課題を提出する直前に,
    それぞれのコードにどういう意図でコードを書いたのか書くように指示されていたことに気づき焦ったが,
    しっかりコメントを書いて提出することが出来たのでよかった.
    次回以降も頑張りたい.

    そうですね.今後は,設定された時間内に終わらなくなることが増えると思います.

  64. 本日の演習ではscanfやgetcharについて学んだ.
    前回より時間がかかった.
    特にgetcharのその都度,
    改行文字を除去したり区切り文字のスペースを除去することが興味深かった.
    参考書で予習復習をしっかりします.

    参考書じゃなくて教科書でしょうかね.いずれにしても考えてもらうことが
    大切だと思います.

  65. 今回の演習では変数について取り扱った.
    課題7でgetcharを用いた時,
    どのようにして改行文字の削除や文字の取得を行えばよいのか分からず,
    課題5のコードとにらめっこしながらコードを記述した.

    できましたか?

  66. 今回はdoubleとfloatの変数を表示する際の変換形式は%fと書けばいいが,
    scanf関数によって受け取る時は区別しないといけない部分が注意するべきポイントだと感じた.
    また,
    getchar関数は入力を受け取っているところが肝で,
    改行文字が受け取っている状態である場合を考慮する必要があり,
    直感的ではなく手こずった.

    でも,できたようですね.

  67. コンパイルから実行まで前回よりスムーズだったがまだ慣れないので講義外でも練習として触れようと思う.

    そうですね.色々とやってみることが大切であると思います.

  68. 今回はかなり苦戦してしまい,
    早めに帰ることができませんでした.
    しかし,
    なんやかんや今回の内容は理解することができたので良かったです.

    早めに帰ることができなくても,ちゃんとしたものができるのが一番です.

  69. C整数や小数はスムーズに読み込めるのに,
    文字は改行や空白に邪魔されて思わぬ挙動をするのが面白かったです.
    scanfgetchar の違いを体験できたおかげで,
    キーボードからの入力がプログラムにどう届くのかをリアルに理解できました.
    コメントをつけながら書くと,
    自分の頭の中も整理されて,
    一石二鳥でした.

    素晴らしい.その通りですね.

  70. 二つ以上%dのようなものがあってどちらも同じものを代入するときに,
    値を代入した変数一つだけを後ろに入れてできないのかを試したが,
    エラーは出なかったが全く違う値が出てきていた.
    これは,
    %dや%fなどにも初期値が設定されているのかなと思った.

    どのようなコードを書いたのかが不明なので,なんとも言えないですね.

  71. gccコマンドがミスの箇所を教えてくれたおかげである程度修正できたが,
    scanfとgetcharのところで何回も試行錯誤しながら書いていったので大変だった.

    でもできましたかね.

  72. 2回目でここまで時間をとられると気がやられそうです.

    落ち着いてやるほうが大切です.

  73. getcharについて,
    課題5・6とは違い課題7では1つ目の英数字を取得する前に改行文字を除去するとうまく出力がされなかった理由がわからなかった.

    具体的にどのようなコードかを見せてください.

  74. 今回は変数を取り扱いました.
    前回より新しい内容が増えたため時間がかかってしまいましたが,
    しっかり最後まで終えられました.
    しっかり復習して次回以降も望んでいきます.

    よろしいと思います.

  75. 今回は時間内に終わらせることができなかった.
    1回と2回の復習をして3回目に備えたい.

    期待しています.

  76. 今日の授業では前回よりも深い内容を扱った.
    やりにくい部分も多くあったが,
    何とかとくことができてよかった.
    早く終わっている人たちのようにはどうすればよいのかを徹底的に考えて行動に移せるようにしたい.
    できる限り,
    与えられた条件を暗記して理解することの重要性を学んだ.
    次回も頑張りたいと思う.

    早く終わるのは良いかどうかはなんとも言えませんよ.

  77. 教科書に非常に詳しく書いてあるおかげで理解しながらスムーズに進めることができました.

    素晴らしい.よろしいと思います.

  78. スペースやコードが1文字違っているだけで動かなくなってしまったり違う出力がされてしまったりするので気を付けたい.

    コンピュータは融通が聞かないですからね.

  79. キーボードからの入力をするときにscanfのほうがいろいろな変数で使えて便利そうに思えたが,
    getcharのほうがいいのはどんな場合なのか気になった.

    一文字を簡単に入れたいときなどですね,

  80. どこでscanfをつかい,
    どこでgetcharを使えばいいのかわかりずらかったです.
    また,
    scanfを使った後にgetcharを使うととても不便に感じました.
    ですが"\n"がバッファに残ることが学べてよかったです.

    次回コメントしましょう.今回はまずはこのような入力方法があるということを知ってほしいと言うことがあります.

  81. 今回の演習では,
    文字や数字を入力するといったコードを使用した相手からのアクションによって異なる結果が得られるようなコードを書いた.
    今回入力した内容はまだなんの意味も持たないような内容だったが,
    学んだことを応用することで,
    自動で計算式に代入して答えを導くといったコードを書くことができるようになると考えた.

    なんの意味もないことはないですよ.

  82. 変数を使ったプログラムがよく理解できました.
    scanfとgetcharの違いもよくわかりました.

    よろしいと思います.

  83. 私はmacosを使用しているのですが課題5でscanfを使用した際に,
    printfの先頭に%cがあると文字を入力できない(enterキーを押すと文字入力済みとなってしまって文字が入力できない)状態になってしまい,
    時間がかかってしまった.
    この前に入力したコードに対してのenterキーとscanfに対してのenterキーが一緒になってしまっていたようだった.
    解決策としてprintfの先頭に%cがある場合は,
    %fの前に空白を入れる必要があることがわかった.
    また,
    空白を作って複数の文字を入力するのと,
    複数回に分けて入力するのではやり方が少し違かったのも理解に苦しんだ.

    「printfの先頭に」の部分ですが,どのように書いたのか具体的に見せてほしいですね.

  84. printf("英数字を1文字入力してください(scanf)\n"); scanf(" %c",&ch1); printf("入力された文字は %c です.
    \n", ch1); というコードで,
    2行目がscanf("%c",&ch1); (%cの前にスペースが> 無い)だとうまく実行できなかったのがなぜかわからなかった.
    > >

    この上にある入力部分で入力情報を入れた際に改行しますが,
    それ (\n) が残っているのを避けるためです.

  85. 今回は変数に関して学習した.特にscanf関数でも文字を受け取ることができることには驚いた.特に課題6で感じたことだが,
    数字は文字として捉えて良いのかといったような曖昧な境界線を自分で見極められるようになるとよりスムーズに進むようになると思った.

    数字を文字として入力しても,それを本当の数値に変換できるので問題はないですが,
    そういう質問じゃないですかね.

  86. 今回は早速前回の数倍タイピングする量が多くなったように感じました.
    しかし;が抜けているなどのコンパイルエラーが一度も発生せず少し自分の成長を感じることができました.

    コンパイルエラーは起きなくなるし,仮にやってしまったとしても,
    文法ミスであって直せばよいだけなので,問題はないですね.

  87. 今回の演習で,
    getcharを2回連続で使わなければならない場面があることを体験した(課題5).
    特に,
    scanfなど他の入力関数の直後にgetcharを使うと,
    標準入力に残った改行文字を除去するために2回呼び出す必要がある.
    一方で,
    最初からgetcharだけで標準入力を受け付ける場合は,
    1回の呼び出しで正しく動作することも確認できた(課題7).
    実際にコードを書いてみて,
    入力バッファの扱いがプログラムの挙動に大きく影響することを実感した.

    確認できたのであればよろしいと思います.
    コメントの入力ですが,なにか特殊な方法でいれていますかね.
    具体的におしえてください.

  88. 今回の講義と演習では,
    変数の役割や型の違い,
    入力や出力の基本を理解できました.
    実際にプログラムを書きながら,
    整数や小数,
    文字の扱いを試すことで,
    教科書だけでは分かりにくい部分を体感できたのが良かったです.
    特にscanfとgetcharの違いを確認する課題では,
    入力の仕組みを実感でき,
    動作の理解が深まりました.

    素晴らしい.この調子をお願いしますね.

  89. 英数字の入力を受けるときに,
    %cの前後の空白が出力結果にとても大きな影響を与えていて,
    そのせいで途中までうまくいかず不思議に思いました.
    なぜなのか教えていただけると助かります.

    上のいくつかのコメントで答えた通りです.
    不明であれば質問にきてください.

  90. 本日もありがとうございました.
    私が行ったときは,
    想定通りに動かすにはscanfで文字を取得するときに先頭にスペースを入れる必要があり,
    課題6にて先頭の改行を除くために余分にいれていたgetcharの行が課題7では必要なくなっていました.
    単に勘違いの可能性もあるのですが,
    仕組みがよくわかりません.

    うえのいくつかのコメントに返信したように,課題5の%cの前のスペースは, その前の入力での改行をスキップするためのものです.

  91. 変数とデータの入力について理解できた.
    getcharで改行文字が残るというところでうまく動かなかったりしたが,
    入力を確定する際に押したエンターの改行文字が残っていると理解できてからうまくできた.
    プログラムの挙動からscanfが自動で頭の改行文字を無視しているのではと気づいたが,
    こういうことを考えられる点も高級言語でなくcから始めるメリットなのではと思った.

    素晴らしい.

  92. scanfとgetcharの違いが分からなかったが,
    時間をかけて理解することができた.
    質問になるのですが,
    今回の課題1のようにある程度自由にコードを変えていい場合,
    どこまで変えて良いのですか?

    課題1は間違っているところだけ修正する問題なので,自由にかえてよいということはないです.

  93. 課題7でアルファベット以外を弾くようにコーディングしてみたが,
    不要だったかもしれないと思った.

    弾くとは?アルファベットが入力されたら入れ直すように要求するということ?

  94. 本日は変数がテーマになっていて,
    個人的には理解するのが少々難しく感じました.Pythonの方が断然簡単に感じるのですが,毎度新しいことを学べて新鮮な授業に感じます.来週もよろしくお願いします.

    どのようなシステム,環境,状況においてもパイソンしか使えないとすると困るでしょう?

  95. 課題1~4は基本的な内容で再度理解が深まった.
    課題5について実際にscanfとgetcharを使用してみて実行したが,
    getcharの使い方に若干苦しんだ.
    getcharについてサイトを見ながらどのような用途に使われるのか調べたが,
    あまり実用的なものなのか?と疑問が残る.

    使えますよね.

  96. getcharが単純に標準入力から一文字を読み取ること,
    そして,
    scanfの書式指定で入力のパース方法を指定したり,
    標準入力のホワイトスペース文字にマッチさせてスキップすることができること等を学んだ.

  97. 情報を入力する手段として,
    scanfとgetcharを学んだが,
    個人的には,
    scanfの方が,
    コートの量が少ないから,
    便利だと感じました.

    scanfもgetcharも使えるようになる,理解できるようになっておいてください.