用c语言写一个程序:假设机票原价为 5000 元,4~10 月为旺季,其余月份为淡季,旺季头等舱(代码 F)打九折,经 济舱(代码 Y)打八折, 淡季头等舱(代码 F)打五折,经济舱(代码 Y)打四 折。编程实现输入出行月份以及舱位类型代码输出机票价格。
时间: 2024-04-29 15:22:54 浏览: 214
好的,我能够帮您实现这个程序!以下是这个程序的代码:
```c
#include <stdio.h>
int main() {
int month;
char cabin_type;
double original_price = 5000, final_price;
printf("请输入出行月份(1-12):");
scanf("%d", &month);
printf("请输入舱位类型(F/Y):");
scanf(" %c", &cabin_type);
if (month >= 4 && month <= 10) { // 旺季
if (cabin_type == 'F') { // 头等舱
final_price = original_price * 0.9;
} else { // 经济舱
final_price = original_price * 0.8;
}
} else { // 淡季
if (cabin_type == 'F') { // 头等舱
final_price = original_price * 0.5;
} else { // 经济舱
final_price = original_price * 0.4;
}
}
printf("机票价格为:%.2f 元\n", final_price);
return 0;
}
```
在这个程序中,我们首先定义了月份、舱位类型和原始价格三个变量。接着,我们让用户输入月份和舱位类型。然后,根据月份和舱位类型的不同,我们通过一系列的条件判断计算出机票的最终价格,并将其存入 `final_price` 变量。最后,我们将最终价格输出给用户。
请注意,在用户输入舱位类型时,我们使用了一个空格来避免可能的输入错误。这是因为如果用户在输入舱位类型时直接输入一个字符,那么他可能会在输入后按下回车从而造成一个换行符的输入,这会导致程序错误。通过在 `%c` 格式化字符串前加上一个空格,我们可以让 `scanf` 函数在读取字符前忽略任何换行符或空格。
希望这个程序能够满足您的需求!如果您还有其他问题或者需要进一步的帮助,请随时告诉我。
阅读全文