• ベストアンサー

ある特定も文字'#'が入力されるまで実行

C言語である特定の文字#が入力されるまで 入力し、#が入力されたら、合計を出力するプログラム はどのようだと思われますか? #はgetchar()でとるのが最善でしょうか?

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

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

do {  一行読む  if ( それが'#' ) break;  if ( それが数値 ) 合計に加算 } whle ( true ); 合計を出力

apple73737
質問者

お礼

ありがとうございました。

関連するQ&A

  • C言語で、文字とか入力されなくても実行を続けたい

    現在簡単なゲームをunix系のOSのC言語でつくってますが なにも入力されなくても停止せず実行を続けられる getcharのような関数はないのでしょうか? windows系のOSにはcons.hヘッダーあたりに そんな関数あったような気がするのですが。。。 普通のgetcharだと、文字が入力されるまで(enter押されるまで) そこで実行が一時中断されてしまい リアルタイムで動くプログラムができないのですが。。。

  • 特定の文字が入力されるまで・・・

    プログラムで、 A~Cの記号が選ばれるまで、 (つまり他の文字が入力されたらもう一度入力しなすようにしたい) 入力コマンドを繰り返す制御文を作りたいのですが 自分で作ってもうまくいきません。 char c; while((c=getchar())!='A'||'B'||'C'){ } 以下はA,B,Cのいずれかが入力されたら実行される制御文が続く しかし、実際はA~Cを入力しても、 次の制御文に移りません。 どこがおかしいでしょうか? また、正しく動かすにはどうすればよいでしょうか?

  • C言語での実行時エラーの場所を特定するには?

    こんにちは。 C言語あるいはC++言語において、プログラム(exeファイル)を実行した時にエラーが発生した場合、 どこでエラーが出ているのかをすぐに特定できる手段はあるのでしょうか? 例えば、printf関数などで、文字を出力していれば、どこでエラーが起きたのかが分かる場合もありますが、文字が出力されないでエラーが起こる場合もあります。 ですので、実行時エラーが起きている場所を特定するのに、いつも苦労します。 何か便利なツールなどは存在しないのでしょうか? ちなみにコンパイラは、Borand C++ Compiler 5.5 を使っています。 何かいい方法を知っておられる方がいらっしゃれば、是非アドバイスを頂きたいと思います。 では、よろしくお願い致します。

  • processingの文字入力について

    現在、プログラミング言語processingを勉強しているのですが、どのようにプログラムを書いたらいいか分からないので、教えてください。 作ろうとしているのは、フラッシュ暗算を行うプログラムなのですが、 processingの場合は、文字入力するときに、1文字しか認識されませんが、 もし2文字、3文字などを入力したい時は、どのようにすればいいのでしょうか? 例えば、フラッシュ暗算で、合計値が52だったとき、52を入力すると、正解とでるプログラムを作りたいわけですが、おそらく配列を使うと思いますが、いったいどのようにしたら52という数字を配列に格納させればいいのでしょうか?

  • 標準入力の違い

    今C言語の学習を行っています。 そこで、文字入力の学習を行っていますが、 getchar() getche() で改行(¥n)の取得値が異なります。 getchar() => 0x10 getche() => 0x13 改行復帰という言葉があるのはわかるのですが、 なぜ、getchar()のほうは、0x10で見えるのでしょうか?

  • 置き換えのプログラム

    c言語初心者です。 入力されたタブを\tに置き換えて、入力全体を出力するプログラムを、 #include <stdio.h> main() { int c; while((c=getchar())!=EOF){ if(c=='\t') printf("\\t");   putchar(c); } } と書いて実行できたのですが、入力した文字(タブ、空白、改行などは除く)を¥(バックスシュラッシュ)に置き換えて出力するプログラムにするためには、どのように書き換えればよいのでしょうか? どなたかご教授お願いします。

  • 入力された物に対して文字を出す

    Linux用のプログラムをC言語で作っていますが、たとえばコンソールから「neko」と入力されたら「nyaa」と表示し、「inu」と入力されたら「wan」、「1」と入力されたら「saru」...といったように入力されたものにたいして決まった文字を表示するにはどうしたらいいのでしょうか?

  • 入力・出力について

    今C言語を勉強しているのですが、 次の問題が解けなくて困っています。 (1)「neko」と入力すると、「n e k o」と文字と文字の間にスペースを挟み出力するプログラムを書け。 (2)「neko」と入力すると、 「n e k o」 と一文字づつ改行し出力するプログラムを書け。 以上2点です。 printfやscanfを使って色々考えてみたのですが、 代入ではなく入力という問題のため、 解答の糸口すら掴めません。 よろしくお願いします。

  • ループの特定入力終了

    C言語初心者です。よろしくお願いします。 whileなどのループ関数を使って、キーボード 入力をするたびに、ループが一度走る事は、 可能です。ですが、 常にループは走らせながらendなどの特定 の入力をされた場合に、ループを抜ける プログラムをどうしてもできません。 わかる方、教えていただければ幸いです。

  • C言語で全角文字を扱いたいのですが、

    C言語で全角文字を扱いたいのですが、 全角文字列を入力して特定の箇所の文字(例えば3文字目)を抜き出して、表示するという感じのプログラムをしたいのですが、うまくいきません。 半角文字ならば、配列を使ってできるのですが・・・・・

専門家に質問してみよう