C言語超初心者のものです。
scanf関数を用いての標準演算子(*/+-%)の入力方法について質問があります。
例:17 / 5 = 3
において ”17”、 ”/”、 ”5” を各々キーボードから入力し、”3”の数値をDOS画面?上に表示させるものです。
”17”、”5”はscanf関数を使いキーボードから入力できるのですが、”/”だけがどうしても標準演算子として認識させることが出来ません。
私は以下のプログラムを組んでいるのですが、
char num3;
・・・(省略)
printf("Please type in a operator: ");
scanf("%c",&num3);
・・・(省略)
printf("%d %c %d is %d\n", num1, num3, num2, product);
無理やりコンパイルして、DOS画面?上に表示させても17 / 5=65536となってしまいます。
”/”をプログラミングの中で認識させて、ディスプレイ上で例式が正常に表示されるようにしたいのですが、どうしても回答が3になりません。
多分1つの標準演算子が入力できれば、他の標準演算子も入力できると考えています。
どうすればキーボードから標準演算子をプログラミングに認識させることが可能になるのでしょうか?
どなたか分かる方がいらっしゃいましたら教えて下さい。
また参考になるURLなどがあればそれも教えて下さい。
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
こんにちは。
jpncndgoo2さん、プログラム例をいれて頂いたのですが、肝心のproductを求めるところが省略されているので想像が入ってしまうのですが、違っていましたらご指摘下さい。
jpncndgoo2さんは、きっとscanfで取り出した'/'をそのまま使用しようとしたのではないでしょうか?
>scanf("%c",&num3);
上記では、あくまでも文字として入力された値を読み込む為、標準演算子としての機能はありません。
jpncndgoo2さんの作成するプログラムの仕様を満たすには、入力された演算子を文字比較して何が入力されたかチェックし、適宜それにあった処理(演算)をすればよいと思います。
(if文という条件分岐を使用します。これは、ネットで調べればすぐ出てくると思います。)
No.4
- 回答日時:
num1 を scanf した後の改行が残っているとかそんなん?
# ソースがないので適当
# そして演算子を格納する変数名が num3 はアカンやろ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
- C言語・C++・C# C言語(構造体) 3 2022/07/05 20:08
- C言語・C++・C# プログラミングの問題です。至急教えてください。 /***から***/の部分をプログラミングにしてほし 1 2022/10/13 11:48
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分 1 2022/07/19 17:03
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 malloc関数を使ってください!お願いします! 最 1 2022/07/21 09:28
- C言語・C++・C# C言語 3 2022/10/04 15:07
- その他(プログラミング・Web制作) Pythonを用いたフラッシュ暗算ソフトの開発に必要なもの 2 2023/01/29 02:22
- C言語・C++・C# 至急お願いします。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分母 3 2022/07/19 17:09
- C言語・C++・C# 質問です 下記のコードを分かりやすく解説お願いします 初心者です #include ‹stdio.h 3 2022/05/26 22:03
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 割られる整数と割る整数を受け取って、商と余りを出力す 3 2022/07/05 10:23
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
正負を反転させて出力するプロ...
-
java初心者です。入力されたの...
-
*をユーザーが入力した数字の数...
-
数字以外が入力されたらエラー...
-
プログラミングの問題です 「金...
-
cout関数を使っているのですが...
-
プログラミング初心者です。 Py...
-
"scanf"でエンターで改行させな...
-
Userformの入力順序をタブオー...
-
scanfが2回使えない・・・?;
-
ワードで文字を入力する時の変...
-
if文の条件にscanf関数を使うと…?
-
入力値が1以下、かつ数字以外の...
-
java 入力された文字列を数値に...
-
プログラム(C)
-
scanf関数について
-
WindowsでEOF
-
2進数の1の数を数える問題
-
Linuxで入力待ちなしkeyread関...
-
プログラムC言語の整数の約数に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
double型が正常に認識されてい...
-
プログラミング初心者です。 Py...
-
正負を反転させて出力するプロ...
-
Excel VBAで、Application.Inpu...
-
C言語について。
-
batプログラム上で文字列を入力...
-
*をユーザーが入力した数字の数...
-
cout関数を使っているのですが...
-
漢字のソートについて
-
数字以外が入力されたらエラー...
-
Userformの入力順序をタブオー...
-
ワードで文字を入力する時の変...
-
Linuxで入力待ちなしkeyread関...
-
java初心者です。入力されたの...
-
EDITコントロールで入力できる...
-
Eclipseコンソール表示を、リセ...
-
小数か整数かを判定する方法
-
C言語scanf_sで何故か2回入力に...
-
VB.NETで16進数+16進数や16進...
-
Linuxプログラミングで、キーボ...
おすすめ情報