各种小函数

各种小函数

1. 爱心函数(简陋版)
  • 代码如下:
#include <stdio.h>
#include <stdlib.h>
#define FONT_RED "\033[0;31m" // 设置打印字体颜色

int main(int argc, char const *argv[])
{
   for (int i = 0; i < 11; i++)
   {
       for (int j = -(12 / 2) + 1; j <= 12 / 2 - 1; j++)
       {
           if (i < 3 && abs(j) < 2 - i || abs(j) > 3 + i)
           {
               printf("%c%c",' ',' ');
           }
           else if (i < 6)
           {
               printf(FONT_RED "%c%c",'*','*');
           }
           else if (abs(j) < 11 - i)
           {
               printf(FONT_RED "%c%c",'*','*');
           }
           else
           {
               printf("%c%c",' ',' ');
           }
       }
       
       printf("\n");
   }
   
   return 0;
}
  • 效果图如下
    在这里插入图片描述
2. 抽卡函数
  • 代码如下
#include <stdio.h>
#include <time.h> // 时间头文件
#include <stdlib.h>

int main(int argc, char const *argv[])
{
   srand((unsigned int) time(NULL));

   int num = 0;
   // 记录抽奖次数
   int count = 1;

   printf("输入 1 开始抽奖, 输入 0 拒绝抽奖: \n");
   scanf("%d", &num);

   while(num)
   {
       printf("第 %d 次抽奖结果:\n", count);

       int result = rand() % 100;// [0, 99]
       if (result >= 0 && result < 4)
       {
           printf("抽到 SSS 卡 \n");
           num = 1;
           break;
       }
       else if (result >= 5 && result < 14)
       {
           printf("抽到 SS 卡 \n");
       }
       else if (result >= 15 && result < 29)
       {
           printf("抽到 S 卡 \n");
       }
       else if (result >= 30 && result < 49)
       {
           printf("抽到 A 卡 \n");
       }
       else
       {
           printf("抽到 F 卡 \n");
       }
       
       /*
       如果想要有保底:抽 n 次必中,加上以下函数
       if (count == n)
       {
           printf("保底:抽到 SSS 卡 \n");
           break;
       }
       如果是最少抽 n 次才能中 SSS 卡,则把函数改为
       if (result >= 0 && result < 4 && count > n)
       {
           printf("抽到 SSS 卡 \n");
           num = 1;
           break;
       }
       */

       printf("请问你还要继续抽奖吗?输入 1 继续抽奖, 输入 0 拒绝抽奖\n");
       scanf("%d", &num);
       if (num == 0)
       {
           printf("很遗憾,你距离 SSS 卡仅有一步之遥\n");
       }
      
     count++;
   }
   if (num == 1)
   {
       printf("恭喜你抽了 %d 次,获得 SSS 卡!!!!\n", count);
       if (count == 1)
       {
           printf("一发入魂!!!\n");
       }
       else if (1 < count && count <= 10)
       {
           printf("你运气真好,欧皇实锤了!!!\n");
       }
       else if (80 < count && count <= 100)
       {
           printf("老倒霉蛋就是你\n");
       } 
   }
   
   return 0;
}
  • 效果图如下:
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值