小明会从第一个食材开始做菜。每做完一个菜,后面食材的新鲜度就会减一。 题目中会给你一个整数数组 num,代表每一个食材的新鲜度,现在请你编写代码,帮小明计算,到最后能获得的新鲜度的和是多少 用c语言进行
时间: 2024-10-16 17:11:45 浏览: 25
用一个故事讲完CPU的工作原理
在C语言中,你可以通过遍历数组并累加每个食材的新鲜度来解决这个问题。由于新鲜度会逐个减少,所以只需要简单的迭代就可以得到结果。下面是一个简单的示例代码:
```c
#include <stdio.h>
int getFreshnessSum(int num[], int size) {
// 初始化总和为0
int total = 0;
// 遍历数组,将每个食材的新鲜度加到总和上,前提条件是新鲜度大于0
for (int i = 0; i < size && num[i] > 0; i++) {
total += num[i];
// 每做完一个菜,食材新鲜度减一
num[i]--;
}
return total;
}
int main() {
int num[] = {5, 3, 7, 2}; // 示例食材新鲜度数组
int size = sizeof(num) / sizeof(num[0]); // 获取数组长度
int freshnessSum = getFreshnessSum(num, size);
printf("小明最后能得到的新鲜度之和是:%d\n", freshnessSum);
return 0;
}
```
在这个代码里,`getFreshnessSum` 函数接受食材新鲜度数组 `num` 和数组大小 `size`,然后返回新鲜度的总和。注意检查食材是否还有剩余(`num[i] > 0`),如果已消耗完则停止添加。
阅读全文