
No.1ベストアンサー
- 回答日時:
> ということが条件なんですけど、どなたか
> プログラムがどのようなものか教えていただけ
> ませんか??
提示されている条件をすべて満たすことは不可能です。特に(2)
No.3
- 回答日時:
条件を満たしていませんけど、こんな感じかな
----------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]){
int a, b, result;
char op;
int i=0;
if(argc < 4){
fprintf(stderr, "引数がたりません。\nex)calc 123 * 456\n");
return -1;
}
a=atoi(argv[++i]);
redo:
op = *argv[++i];
b=atoi(argv[++i]);
switch(op){
case '+':
result=a+b;
break;
case '-':
result=a-b;
break;
case '*':
result=a*b;
break;
case '/':
result=a/b;
break;
default:
fprintf(stderr, "使用できる演算子は +,-,*,/ の4つです。");
return -2;
}
if(i<argc - 1){
a=result;
goto redo;
}
printf("ans=%d\n", result);
return 0;
}
No.2
- 回答日時:
学校の宿題ですか?
プログラム名を仮に"calc"とした場合、コマンドラインで"calc 1 + 2 + 3"などと入力して実行すると答えを出力する、というような処理にすればいいのではないでしょうか。
まず(2)。
第2パラメータ"+argv[]"は"*argv[]"のタイプミスですね。
main関数で入力された引数を判断します。
演算不可能な引数であればエラーを返して終了します。
それから(1)。
引数はchar型でmain関数に渡されるのでatoi()を使って数値にしなさいということでしょう。
(3)は"3つ以上の数字を"でないと意味を成しませんね。
足し算以外で3つ以上の数字が指定された場合はエラーを返す、といった仕様にすればこの条件も満たされます。
これでイメージが掴めたら後はがんばって作りこんでください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
3のつく数と3の倍数を表示 C言語
-
「Aに対するBの割合」と「Aに対...
-
Enterキーを押されたら次の処理...
-
Aの値からBの値を除するとは??
-
有効数字について 以前質問をし...
-
信頼区間の1.96や1.65ってどこ...
-
std::set<int> で、ある値が何...
-
20'(角度)の計算がわかりま...
-
数学で、定数aの値を求めよって...
-
do-while文が禁止される理由
-
正の数aは4の倍数で、7でわると...
-
3桁区切(コンマ)記号をつけ...
-
プログラムでの数字につく”f”の...
-
未解決の外部シンボル _printf...
-
ループを途中で抜けたいのですが。
-
エディットコントロール入力時...
-
関数におけるif文とreturn文に...
-
”あいうえお” を ”おえういあ...
-
#defineの使い方について
-
10進数での「25」が2進数では「...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語で%を使わない余りの出し方
-
カードシャッフルのブログラム...
-
2の補数を計算するプログラム
-
OpenCVによる4値化について
-
ヒストグラム均等化処理プログラム
-
【C#】SQL文の中に変数を埋め込...
-
再起呼び出しの回数をカウント...
-
intとlongは同じ?
-
C++で表を作成したいのです ...
-
画像の拡大・縮小
-
argvのNULLチェック
-
c言語プログラミングについて f...
-
ヌメロンのプログラム
-
C言語でDOS画面のプログラム(...
-
OpenGLの惑星プログラム
-
opencvとmbedのシリアル通信で...
-
C言語プログラミング 漸化式に...
-
3のつく数と3の倍数を表示 C言語
-
猫でもわかるゲームプログラミ...
-
条件が多い場合
おすすめ情報