这篇文章主要为大家介绍了如何利用C语言实现原神抽卡的小游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
小奔最近学了C语言不少的东西,但是想用学到的东西来搞一个小游戏。
不过小奔就不做那些猜数字等小游戏了,虽然很经典,但是可以尝试一下其他比较好玩的。
小奔喜欢玩原神,但它抽卡系统的中奖概率太低了,所以就类似做一个它的抽卡系统吧,不过没有保底功能哦(小奔还不想搞,还要学习新的知识,不过以后熟练了就可能会搞一个),是全角色抽卡,只有角色没有武器的,可以十连抽,没有保底功能,抽中的概率只有1/100
效果图展示
开始的界面

输入1
没中

中了

输入10

输入0

实现代码
我创建了两个.c源文件,一个.h头文件
test4.26.c
#define _CRT_SECURE_NO_WARNINGS
#include"game.h"
int main()
{
srand((unsigned)time(NULL));//随机赋值
while (1)
{
int choose = 0;
choose = Cho();
switch (choose)
{
case 1:
{
num1:
//许愿进行
wish();
break;
}
case 0:
{
num2:
goto over;//结束程序
}
case 10:
{
num3:
int i = 0;
for (i = 0; i < 10; i++)
{
wish();
}
break;
}
default:
{
swi:
//未能识别选项,请重新输入
printf("未能识别选项,请重新输入\n\n");
int again = 0;
again = Cho();
if (again == 1)
goto num1;//返回case 1
else if (again == 0)
goto num2;//返回case 0
else if (again == 10)
goto num3;//返回case 10
else
goto swi;//重复default
}
}
}
over:
return 0;
}许愿.c
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
void wish()
{
int random_num = rand() % 440 ;
//修改它可以改变概率,当前概率是1/100
if (1 == random_num)
{
printf("★☆★☆★刻晴\n");
}
else if (2 == random_num)
{
printf("★☆★☆★胡桃\n");
}
else if (3 == random_num)
{
printf("★☆★☆★七七\n");
}
else if (4 == random_num)
{
printf("★☆★☆★钟离\n");
}
else if (5 == random_num)
{
printf("★☆★☆★卢老爷\n");
}
else if (6 == random_num)
{
printf("★☆★☆★宵宫\n");
}
else if (7 == random_num)
{
printf("★☆★☆猫猫\n");
}
else if (8 == random_num)
{
printf("★☆★☆★琴\n");
}
else if (9 == random_num)
{
printf("★☆★☆安柏\n");
}
else if (10 == random_num)
{
printf("★☆★☆丽莎\n");
}
else if (11 == random_num)
{
printf("★☆★☆凯亚\n");
}
else if (12 == random_num)
{
printf("★☆★☆芭芭拉\n");
}
else if (13 == random_num)
{
printf("★☆★☆班尼特\n");
}
else if (14 == random_num)
{
printf("★☆★☆★不干正事的巴巴托斯\n");
}
else if (15 == random_num)
{
printf("★☆★☆★小可莉\n");
}
else if (16 == random_num)
{
printf("★☆★☆雷泽\n");
}
else if (17 == random_num)
{
printf("★☆★☆★莫娜\n");
}
else if (18 == random_num)
{
printf("★☆★☆砂糖\n");
}
else if (19 == random_num)
{
printf("★☆★☆菲谢尔\n");
}
else if (20 == random_num)
{
printf("★☆★☆诺艾尔\n");
}
else if (21 == random_num)
{
printf("★☆★☆★阿贝多\n");
}
else if (22 == random_num)
{
printf("★☆★☆★优菈\n");
}
else if (23 == random_num)
{
printf("★☆★☆罗莎莉亚\n");
}
else if (24 == random_num)
{
printf("★☆★☆★魈\n");
}
else if (25 == random_num)
{
printf("★☆★☆北斗\n");
}
else if (26 == random_num)
{
printf("★☆★☆凝光\n");
}
else if (27 == random_num)
{
printf("★☆★☆香菱\n");
}
else if (28 == random_num)
{
printf("★☆★☆重云\n");
}
else if (29 == random_num)
{
printf("★☆★☆行秋\n");
}
else if (30 == random_num)
{
printf("★☆★☆★达达利亚\n");
}
else if (31 == random_num)
{
printf("★☆★☆辛焱\n");
}
else if (32 == random_num)
{
printf("★☆★☆★雷电将军\n");
}
else if (33 == random_num)
{
printf("★☆★☆★神里绫华\n");
}
else if (34 == random_num)
{
printf("★☆★☆★枫原万叶\n");
}
else if (35 == random_num)
{
printf("★☆★☆早柚\n");
}
else if (36 == random_num)
{
printf("★☆★☆九条裟罗\n");
}
else if (37 == random_num)
{
printf("★☆★☆★心海\n");
}
else if (38 == random_num)
{
printf("★☆★☆托马\n");
}
else if (39 == random_num)
{
printf("★☆★☆五郎\n");
}
else if (40 == random_num)
{
printf("★☆★☆★荒泷一斗\n");
}
else if (41 == random_num)
{
printf("★☆★☆★八重神子\n");
}
else if (42 == random_num)
{
printf("★☆★☆★神里绫人\n");
}
else if (43 == random_num)
{
printf("★☆★☆久岐忍\n");
}
else if (44 == random_num)
{
printf("★☆★☆夜兰\n");
}
else
printf("非酋\n");
}
int Cho()
{
int a = 0;
printf("\n|-----------------|\n");
printf("|输入1开始单抽 |\n");
printf("|输入10开始十连抽 |\n");
printf("|输入0结束游戏 |\n");
printf("|-----------------|\n");
printf("是否开始许愿:>");
scanf("%d", &a);
return a;
}game.h
#pragma once
#include<stdio.h>
#include <time.h>
#include <stdlib.h>
void wish();
//许愿运行
int Cho();
//输入是否进行游戏
我写的这个小游戏还很粗糙,goto用的太多了,显得有点乱,可读性不太好,不过才开始学,进步空间还是很大的,我们继续加油,未来可期
下载
exe地址 提取码:1234
代码地址
以上就是基于C语言编写一个简单的抽卡小游戏的详细内容,更多关于C语言抽卡游戏的资料请关注编程学习网其它相关文章!
沃梦达教程
本文标题为:基于C语言编写一个简单的抽卡小游戏
基础教程推荐
猜你喜欢
- Qt数据库应用之实现通用数据库请求 2023-03-18
- character-encoding – Linux中最常见的C语言编码(和Unix?) 2023-11-21
- 05-C语言进阶——动态内存管理 2023-11-20
- VisualStudio2010安装教程 2023-01-05
- C语言的三种条件判断语句你都了解吗 2023-03-05
- C语言植物大战数据结构二叉树递归 2023-04-09
- C语言数组长度的计算方法实例总结(sizeof与strlen) 2023-04-26
- 利用QT设计秒表功能 2023-05-30
- 纯C++代码详解二叉树相关操作 2023-05-15
- g++: const 丢弃限定符 2022-10-07
