C# · 12月 19, 2021

C语言实现随机抢红包功能

用C语言实现红包发放随机抢红包的功能,这主要是一个随机数的应用与控制。程序运行截图如图下:

代码如下:

#include

#include

#include

int main()

{

system(“color A”);

while(1)

{

float a[25];//保存10个红包金额 ==a[0]不要了,为了显示第几个红包

float total;//总金额

printf(“ttt欢迎使用红包分发系统nnn”);

printf(“请输入红包的总额:n”);

scanf(“%f”,&total);

int num;//发出去num个红包

printf(“请输入红包的个数:(1~20之间)n”);

scanf(“%d”,&num);

float min=0.01;//最小金额0.01元

/*float max=0;//最大金额,金额未确定,先初始化为0 ===作业*/

int i=0,j;

float t;//平均值

float MAX=0;

float safe_total=0;//跳跃值

float sum=0;//累计每次领取的红包金额

srand(time(NULL));//随机种子,与rand是对配对的 每次执行的结果都不一样

for(i=1;i<num;i++)//循环领取红包 从1-9,共9份

{

t=total/(num-i+1); //平均值 全是10元

safe_total=t*2;//获取跳跃值 20.00元

a[i]=(rand()%(int)(safe_total*100)+(int)min*100)/100.0+min;//10.5

total-=a[i];//发出去的剩下红包金额

sum+=a[i]; //领取的红包金额

printf(“tt第%d个红包有%0.2f元n”,i,a[i]);

if(a[i]>MAX)

{

MAX=a[i];

j=i;

}

}

a[i]=total;

printf(“tt第%d个红包有%0.2f元nnnn”,a[i]);

if(total>MAX)

{

printf(“tt第%d个同学是运气王,抢到了0.2f元的金额nnn”,num,total);

}

else

{

printf(“tt第%d个同学是运气王,抢到了%0.2f元的金额nnn”,j,MAX);

}

system(“pause”);

system(“cls”);

}

return 0;

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。