【3月6日実施】システムメンテナンス実施のお知らせ

以下設問お助けください、、、
解答コードお願いしますm(__)m

関数名 getFruitPrice
引数指定したフルーツ種別に対する価格を price 引数に出力する。

データ型 説明
int    0:正常に値段が出力できた
    -1:存在しないフルーツ種別が指定された

引数  データ型   名前
第 1 short fruitID フルーツ種別 ID
第 2 long * price フルーツ価格
説明
フルーツ種別 ID は次のものをサポートするものとし#define で定義すること。
define 名    フルーツ種別 ID  説明
D_APPLE_ID     1      リンゴ。価格は 150 円
D_ORANGE_ID    2      みかん。価格は 100 円
D_BANANA_ID    3      バナナ。価格は 80 円

main 関数から getFruitPrice 関数を呼び出し、画面に価格を表示せよ。与えるフル
ーツ種別 ID を変えて出力期待値が表示されるようにせよ。

補足 getFruitPrice 関数では switch-case 文を使用して種別を判定すること。

表示例 フルーツ種別:1 価格:150 円
出力期待値 フルーツ種別が 1 の時 → フルーツ種別:1 価格:150 円
フルーツ種別が 2 の時 → フルーツ種別:2 価格:100 円
フルーツ種別が 3 の時 → フルーツ種別:3 価格:80 円
フルーツ種別が 4 の時 → 対象のフルーツは存在しません

A 回答 (2件)

了解です




#include <stdio.h>

#define D_APPLE_ID 1
#define D_ORANGE_ID 2
#define D_BANANA_ID 3

int getFruitPrice(short fruitID, long* price) {
switch(fruitID) {
case D_APPLE_ID:
*price = 150;
return 0;
case D_ORANGE_ID:
*price = 100;
return 0;
case D_BANANA_ID:
*price = 80;
return 0;
default:
return -1;
}
}

int main() {
short fruitID = 1;
long price;

int result = getFruitPrice(fruitID, &price);

if(result == 0) {
printf("フルーツ種別:%d 価格:%ld 円\n", fruitID, price);
} else {
printf("対象のフルーツは存在しません\n");
}

return 0;
}
    • good
    • 1
この回答へのお礼

ありがとうございました。
またよろしくお願いいたします。

お礼日時:2023/03/14 21:04

#include <iostream>


using namespace std;

#define D_APPLE_ID 1
#define D_ORANGE_ID 2
#define D_BANANA_ID 3

int getFruitPrice(short fruitID, long* price) {
switch(fruitID) {
case D_APPLE_ID:
*price = 150;
return 0;
case D_ORANGE_ID:
*price = 100;
return 0;
case D_BANANA_ID:
*price = 80;
return 0;
default:
return -1;
}
}

int main() {
short fruitID = 1;
long price;

int result = getFruitPrice(fruitID, &price);

if(result == 0) {
cout << "フルーツ種別:" << fruitID << " 価格:" << price << " 円" << endl;
} else {
cout << "対象のフルーツは存在しません" << endl;
}

return 0;
}


getFruitPrice関数では、フルーツIDをswitch-case文で判定して、対応する価格をprice引数に代入し、0を返します。存在しないフルーツIDが指定された場合は、-1を返します。main関数では、フルーツIDを設定し、getFruitPrice関数を呼び出し、戻り値が0の場合はフルーツ種別と価格を表示し、-1の場合は対象のフルーツは存在しませんと表示します。
    • good
    • 1
この回答へのお礼

回答ありがとうございます。

if(result == 0) {
cout << "フルーツ種別:" << fruitID << " 価格:" << price << " 円" << endl;
} else {
cout << "対象のフルーツは存在しません" << endl;
}

調べたらC++言語で記載してもらっているみたいなのですが
C言語ではどのような記載になりますか。
お手数ですがよろしくお願いします。

お礼日時:2023/03/14 20:19

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A