###前提・実現したいこと
以下示す実行例のように、 コマンドライン引数として2個の数値と1個の演算を表す単語を受け取り、指定された演算の種類に応じた計算を行うプログラムを作成せよ演算を表す単語は"add" "subtract" " multiply" "divide " のいずれかの単語でなければならない。
( 実行例) ./a.out 4.5 6.0 mutiply 27.000
なお、 1番目コマンドライン引数として数値データ以外の文字列がされた場合は0が入力されたものして扱うこと。 また、 3番目のコマンドライン引数に四則演算を表す単語以外の文字列が入力された場合は、 プログラムは何も表示せずに終了するものとする。
という課題が出されたのですが、解き方がイメージ出来なかったので教えてください。
###発生している問題・エラーメッセージ
エラーメッセージ
###該当のソースコード
#include<stdio.h> #include<string.h> #include<stdlib.h> int main(double aegc, char **argv){ double a,b,x; if(strcmp(argv[3],"add")==0){ a=atof("argc[1]"); b=atof("argc[2]"); x=a+b; printf("%f\n",x); }else if(strcmp(argv[3],"subtract")==0){ a=atof("argc[1]"); b=atof("argc[2]"); x=a-b; printf("%f\n",x); }else if(strcmp(argv[3],"multiply")==0){ a=atof("argc[1]"); b=atof("argc[2]"); x=a*b; printf("%f\n",x); }else if(strcmp(argv[3],"divide")==0){ a=atof("argc[1]"); b=atof("argc[2]"); x=a/b; printf("%f\n",x); }else{ printf("0\n"); } return 0; }
###試したこと
課題に対してアプローチしたことを記載してください
###補足情報(言語/FW/ツール等のバージョンなど)
C言語でポインタを使いました
回答3件
あなたの回答
tips
プレビュー