用c语言实现某学院有m个学生参加春游,休息时喝汽水。商家公告: 买一瓶汽水定价1.40元,喝一瓶汽水(瓶不带走)1.00元。 为节约资源,规定3个空瓶可换回一瓶汽水(1.4*2/3=0.93),或20个空瓶可换回7瓶汽水。1.4*13/20=0.91 为方便顾客,可先借后还。例如借一瓶汽水还3个空瓶,或借七瓶汽水还20个空瓶
时间: 2023-05-24 22:00:48 浏览: 63
以下是用C语言实现此问题的代码:
#include <stdio.h>
int main() {
int m; // 参加春游的学生数量
printf("请输入参加春游的学生数量:");
scanf("%d", &m);
int total_empty_bottles = 0; // 空瓶子总数
int total_soda = 0; // 汽水总瓶数
while (m > 0) {
int borrowed_soda = 0; // 借来的汽水瓶数
int borrowed_empty_bottles = 0; // 借来的空瓶子数量
printf("请输入借来的汽水瓶数:");
scanf("%d", &borrowed_soda);
printf("请输入还回的空瓶子数量:");
scanf("%d", &borrowed_empty_bottles);
total_empty_bottles += borrowed_empty_bottles;
total_soda += borrowed_soda;
// 计算换回的汽水瓶数
int returned_soda = total_empty_bottles / 3;
total_empty_bottles -= returned_soda * 3;
// 计算换回的空瓶子数量
int returned_empty_bottles = total_soda / 20;
total_soda -= returned_empty_bottles * 7;
// 计算喝掉的汽水数量
int drank_soda = borrowed_soda - returned_soda;
printf("喝掉了%d瓶汽水,还回%d个空瓶子,目前共有%d个空瓶子和%d瓶汽水\n", drank_soda, borrowed_empty_bottles, total_empty_bottles, total_soda);
m--;
}
return 0;
}
回答完毕。