某地征集慈善募捐,当总数达到10万元时捐款结束,统计此时捐款的人数并输出。
时间: 2024-11-27 09:09:22 浏览: 6
某地10万头现代高效仔猪场项目水土保持方案报告书.doc
5星 · 资源好评率100%
要实现这个功能,你可以创建一个简单的C程序,使用结构体来存储捐赠信息,包括捐款金额和捐赠者数量。当捐款总额达到10万元时,停止接受捐款并输出捐款人数。以下是一个简单的示例:
```c
#include <stdio.h>
#define MAX_DONATIONS 1000 // 假设最多有1000人捐款
#define LIMIT 100000 // 10万元
typedef struct {
float amount;
int count; // 当前捐款人数
} Donation;
Donation donations[MAX_DONATIONS];
int total_amount = 0, current_count = 0;
void add_donation(float donation) {
if (total_amount + donation <= LIMIT && current_count < MAX_DONATIONS) {
donations[current_count].amount = donation;
donations[current_count++].count = 1;
total_amount += donation;
} else {
printf("捐款已结束,总额达到10万元。\n");
return;
}
}
int main() {
float donation;
while (scanf("%f", &donation) == 1 && donation > 0) { // 输入捐款金额
add_donation(donation);
}
printf("捐款结束后,总共有 %d 位捐款者。\n", current_count);
return 0;
}
```
在这个程序中,`add_donation` 函数用于添加新的捐款,如果捐款额加上当前总额不超过10万元并且未满最大捐款人数,则记录新捐款;否则,打印提示消息并结束捐款。`main` 函数通过循环读取用户的捐款金额,直到输入结束。
阅读全文