抢红包 C语言

抢红包

题目描述

每年春节,SLF 都会在微信群上抢红包,赚得盆满钵满(那是不可能的),但也因为一直守在微信上抢红包,每年 SLF 都会被父母指责在饭桌上没有和亲戚朋友多聊天。这不,春节又到了,正当 SLF 为此而苦恼时,LWH 找上门来了。

LWH 自己用 C 语言写了一个自动抢红包的辅助工具,想为 SLF 解决烦恼,但条件是:

(1)SLF 必须用 5 块钱买这个工具。

(2)SLF 使用该工具抢红包时,一旦抢到的金额不小于 10 块钱,就必须分给 LWH 1 块钱。

但 SLF 觉得自己不划算,于是 LWH 又提出了另一种条件:

(1)SLF 免费使用这个工具。

(2)SLF 使用该工具抢红包时,一旦抢到的金额不小于 5 块钱,就必须分给LWH 1 块钱。

于是 SLF 决定分别计算 2 种条件下必须给 LWH 的金额,并选择给 LWH 其中较少的金额,但是好景不长,与 SLF 多次抢同一红包的 XZJ 马上发现了蹊跷,并在 SLF 抢完第 n 个红包后举报了 SLF,此后 SLF 的工具便失效了。

由于 SLF 抽不出时间计算最终要给 LWH 的金额,便想请你帮忙设计一个程序完成这个任务。

输入

第 1 行,一个整数 n (0≤n≤100)

接下来 n 行,每行一个整数 m (1≤m≤100),表示 SLF 使用工具抢到的金额。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言是一种通用的高级编程语言,广泛应用于系统软件开发、嵌入式系统、游戏开发等领域。它具有简洁、高效、灵活的特点,被认为是一种较为底层的编程语言。 红包管理系统是一个用于管理红包活动的系统,可以实现红包的发放、领取、查询等功能。在C语言中,可以通过结构体、数组、文件操作等方式来实现红包管理系统。 以下是一个简单的C语言红包管理系统的示例: ```c #include <stdio.h> #include <stdlib.h> #define MAX_RED_PACKETS 100 typedef struct { int id; float amount; int isTaken; } RedPacket; RedPacket redPackets[MAX_RED_PACKETS]; int numRedPackets = 0; void addRedPacket(float amount) { if (numRedPackets < MAX_RED_PACKETS) { redPackets[numRedPackets].id = numRedPackets + 1; redPackets[numRedPackets].amount = amount; redPackets[numRedPackets].isTaken = 0; numRedPackets++; printf("红包添加成功!\n"); } else { printf("红包已,无法添加!\n"); } } void takeRedPacket(int id) { if (id > 0 && id <= numRedPackets) { if (redPackets[id - 1].isTaken) { printf("该红包已被领取!\n"); } else { redPackets[id - 1].isTaken = 1; printf("红包领取成功!金额为%.2f元\n", redPackets[id - 1].amount); } } else { printf("无效的红包ID!\n"); } } void displayRedPackets() { printf("红包列表:\n"); for (int i = 0; i < numRedPackets; i++) { printf("ID:%d,金额:%.2f元,状态:%s\n", redPackets[i].id, redPackets[i].amount, redPackets[i].isTaken ? "已领取" : "未领取"); } } int main() { int choice; float amount; int id; while (1) { printf("\n红包管理系统\n"); printf("1. 添加红包\n"); printf("2. 领取红包\n"); printf("3. 查看红包列表\n"); printf("4. 退出\n"); printf("请选择操作:"); scanf("%d", &choice); switch (choice) { case 1: printf("请输入红包金额:"); scanf("%f", &amount); addRedPacket(amount); break; case 2: printf("请输入要领取的红包ID:"); scanf("%d", &id); takeRedPacket(id); break; case 3: displayRedPackets(); break; case 4: exit(0); default: printf("无效的操作!\n"); break; } } return 0; } ``` 这个示例中,红包信息使用结构体表示,包括红包ID、金额和领取状态。通过数组来存储多个红包信息。用户可以选择添加红包、领取红包或查看红包列表等操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值