64,651
社区成员
发帖
与我相关
我的任务
分享
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main(void)
{
float money_yuan;
int money_fen;
int part;
int per[100];
int i;
int index;
int tmp;
printf("输入红包的金额");
scanf("%4f", &money_yuan);
money_yuan *= 100;
money_fen = (int)money_yuan;
printf("红包金额:%d分钱", money_fen);
printf("输入红包的数量");
while (scanf("%d", &part) != 1 || part<1 || part>100)
{
printf("红包数量错误");
fflush(stdin);
}
printf("红包数量:%d\n", part);
if (money_fen<part)
{
printf("红包金额不够红包数量分配");
exit(0);
}
srand(time(NULL));
for (i = 0; i<part; ++i)
{
if (i == part - 1)
per[i] = money_fen;
else if (i == 0)
{
per[i] = money_fen / 2;
money_fen -= per[i];
}
else
{
if (money_fen / 3 == 0)
per[i] = 1;
else
{
per[i] = rand() % (money_fen / 3) + 1;
}
if (money_fen - per[i]<part - i - 1)
--i;
else
money_fen -= per[i];
}
}
for (i = 0; i<part; ++i)
printf("%d:%.2f元\n", i + 1, (float)per[i] / 100);
}