也许是的,得横空出世了

如你所见

这款基于\(C++\)能模仿Mrs. Yao抽签系统的cpp终于做完了啦~

初期功能很少。\(BUG\)极多。

所以为了您的体验:) 请遵守格式

代码:

#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
map<string,int> mp;
char tag;
int cgo,r,n,nums,tt,cnt;
string s,str[10005];
bool isnum1(char c,int l,int r){ //* 0<=l<=r<=9.
if(c-'0'>=l&&c-'0'<=r){
return 1;
}
return 0;
}
inline int getnum(int r){
return rand()%r+1;
} void ck(){ //* checking prizes list.
if(cnt==0) exit(0);
for(int i=1;i<=cnt;i++){
if(mp[str[i]]==0){
str[i]="///";
}
}
}
string getpr(){
int fl=1;
string tp1;
while(fl){
tp1=str[getnum(cnt)];
if(tp1!="///"){
fl=0;
}
}
return tp1;
}
int main(){
system("cls");
cout<<"Hello~~~~~你可以在这里体验像 Mrs.Yao一样的幸运抽签~~"<<endl;
Sleep(3000);
system("color 6");
system("cls");
cout<<"Warning:There are many BUGS in this code.Please pay attention to the form.(请注意格式)"<<endl;
Sleep(2000);
cout<<"请在游玩前保存好所有未保存的文件!";
Sleep(1000);
system("cls");
system("color 7");
system("title loading");
Sleep(1000);
for(int i=1;i<=100;i++){
cout<<"Loading...."<<i<<"% <--- 功德"<<endl;
Sleep(50);
}
Sleep(500);
cout<<"加载成功."<<endl;
srand(time(0));
Sleep(100);
system("cls");
while(1){
while(1){
system("title 是否继续");
cout<<"是否运行?是1否0:";
cin>>tag;
if(isnum1(tag,0,1)){
if(tag-'0'){
cout<<"Fine.";
break;
}else{
cout<<endl<<"OK.Thanks for coming!"<<endl;
return 0;
}
}else{
cout<<"你写的不对....Try again...?"<<endl;
cgo=rand()%100;
if(cgo==50){
cout<<"倒霉孩子,程序提前结束.";
exit(0);
}
}
}
system("cls");
system("title setting");
cout<<"请选择(序号)范围:)(1~r,1<=r<=RAND()_MAX):";
cin>>r;
cout<<"选用上次的东西(1)还是重新设置(0)?"<<endl;
cin>>cgo;
if(!cgo){
mp.clear();
cnt=0;
cout<<"OK.请输入奖品类数(1<=n<=10000):"<<endl;
cin>>n;
tt=0;
for(int i=1;i<=n;i++){
cout<<"奖品名称 奖品个数:"<<endl;
cin>>s>>nums;
if(!mp[s]){
mp[s]=nums;
tt+=nums;
str[++cnt]=s;
}
}
}else{
if(tt==0){
cout<<"error!!!there aren't any prizes!";
exit(0);
}
}
ck();
system("cls");
Sleep(1000);
system("color 2");
system("title 让人fafa♂的抽奖~");
cout<<"即将开始刺只因♂的开箱环节~~"<<endl;
Sleep(500);
for(int i=5;i>=1;i--){
cout<<i<<"..."<<endl;
Sleep(1000);
}
system("cls");
for(int i=1;i<=50;i++){ //50个快速
cout<<"序号:"<<getnum(r)<<endl;
Sleep(50);
system("cls");
}
for(int i=1;i<=20;i++){ //20慢速
cout<<"序号:"<<getnum(r)<<endl;
Sleep(200);
system("cls");
}
int ans=getnum(r);
cout<<"恭喜"<<ans<<"号中奖!";
Sleep(5000);
system("cls");
system("title 奖品...");
for(int i=1;i<=50;i++){
cout<<ans<<"号会获得"<<getpr()<<"奖品"<<endl;
Sleep(30);
system("cls");
}
for(int i=1;i<=20;i++){
cout<<ans<<"号会获得"<<getpr()<<"奖品"<<endl;
Sleep(200);
system("cls");
}
system("title 幸(倒)运(霉)天(孩)使(子)");
string tp111=getpr();
cout<<"恭喜"<<ans<<"号 get "<<tp111<<"!";
Sleep(10000);
system("cls");
mp[tp111]--;
tt--;
system("color 7");
}
return 0;
}
//* 作者:cute_chuanpu
//Open Source!

不想复制代码?点这里

【C++小程序】《我要抽签》b1.0做好了~的更多相关文章

  1. 微信小程序云开发-从0打造云音乐全栈小程序

    第1章 首门小程序“云开发”课程,你值得学习本章主要介绍什么是小程序云开发以及学习云开发的重要性,并介绍项目的整体架构,真机演示项目功能,详细介绍整体课程安排.课程适用人群以及需要掌握的前置知识.通过 ...

  2. 微信小程序入门与实战 从0到1进行细致讲解 涵盖小程序开发核心技能下载

    第1章 什么是微信小程序? 第2章 小程序环境搭建与开发工具介绍 第3章 从一个简单的“欢迎“页面开始小程序之旅 第4章 第二个页面:新闻阅读列表 第5章 小程序的模板化与模块化 第6章 构建新闻详情 ...

  3. 微信小程序基于最新版1.0开发者工具分享-小试牛刀(视频)+发布流程

    第一章:小程序初级入门教程 小试牛刀[含视频] 视频地址:https://v.qq.com/x/page/i0554akzobq.html 这一章节中,我们尝试着写一个最简单的例子,包含 2 个静态页 ...

  4. 3个微信小程序体验报告

    1.小程序摩拜单车.腾讯视频.JD的体报告 2.小程序的入口存在不公平 3.小程序2.0会怎么样?WSO浅谈 KEVIN常用的APP是以摩拜单车与JD商城和大众点评等,那么今天也就通过这上个进行对比 ...

  5. nodejs+koa2微信app支付,小程序支付

    企业付款到零钱文档:https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_2 1,搞微信支付,先看流程图 https: ...

  6. 快速入门 WePY 小程序【转】

    一.WePY介绍 WePY 是 腾讯 参考了Vue 等框架对原生小程序进行再次封装的框架,更贴近于 MVVM 架构模式, 并支持ES6/7的一些新特性. 二.WePY 使用 1.WePY的安装或更新都 ...

  7. 微信小程序学习指南

    作者:初雪链接:https://www.zhihu.com/question/50907897/answer/128494332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  8. 300道随机四则运算小程序(java编写)

    这是由Java编写的300道随机四则运算小程序, 运算数范围为0~100(不包括100),运算结果保留两位小数. 程序代码: import java.util.*; class Yunsuan{ pu ...

  9. 小程序-demo:小程序示例

    ylbtech-小程序-demo:小程序示例     1.返回顶部 0. 1.app.js const openIdUrl = require('./config').openIdUrl App({ ...

  10. 3-4章 第3章 form表单组件与小程序前后端通信

    View它相当于是一个点击触发一个事件,但是它的事件应该是相对来说可能是比较是偏向于页面上的一些展示,或者说是页面上的一些导航的一些跳转.Button它是一个标签, button是一个标签,一般去触发 ...

随机推荐

  1. AWS RedShift实战应用SQL大全及经验分享[持续更新]

    文章目录 前言 - 关于RedShift 一.数据维护篇 1.1 表结构操作 1.2 数据添加与查询 1.3 数据修改与删除 1.4 事物操作 二.SQL结构篇 2.1 使用with封装代码 2.2 ...

  2. 浅谈Redis与分布式锁

    为什么需要分布式锁 Redis如何实现分布式锁 如何避免死锁? 锁被别人释放怎么办? 锁过期时间不好评估怎么办? Redlock 真的安全吗 为什么要在多个实例上加锁? 为什么大多数实例加锁成功,才算 ...

  3. Cesium测量优化1

    简介:优化绘制点.线,面鼠标位置获取精度.支持3dties,gltf model,以及box等Geometry Entity上的位置拾取. 测试代码 <template> <div ...

  4. 标量子查询加聚合函数sql改写一

    标量子查询的语句: select /*+ GATHER_PLAN_STATISTICS dwtest */ empno, (select count(*) from DEPT1 b where b.i ...

  5. centos 更新git

    yum remove git rpm -ivh http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-1. ...

  6. .Net Core 中使用NLog替代默认日志

    1.添加引用nlog.config和Nlog.Web.AspNetCore 2.配置NLog 配置文件 添加一个Web配置文件xxxx.Config <?xml version="1. ...

  7. vue组件传值 | 子父组件

    一.子父组件 1.子组件获得父组件中的值:通过v-bind方式绑定在子组件中 // 子组件中定义propsprops: ['msg'] // 父组件中: <deleteBar :msg='thi ...

  8. centos7 安装jupyter

    1.基本包安装 yum update -y yum install python-pip -y yum install bzip2 -y yum groupinstall "Developm ...

  9. socket 客户端发送命令

    import socket import sys import os,time reload(sys) sys.setdefaultencoding('utf8') def send_cmd(comm ...

  10. openwrt 运行golang 设置时区

    转载自:https://www.ohyee.cc/post/note_go_read_openwrt_timezone openwrt 运行golang 时候发现打印时间错误.golang读取时区的过 ...