鱼C论坛

 找回密码
 立即注册
查看: 3225|回复: 24

[技术交流] 每周一练第12期 鱼C生活小游戏【C++版块提升计划】【限免】

[复制链接]
发表于 2022-10-30 18:24:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 高山 于 2022-11-5 17:01 编辑

好久不见,终于等到我亲自发了~
我给大家准备了1个惊喜~

先上图~

代码.png 代码2.png 代码3.png 代码4.png
看完了没?期不期待?
期待就先说说程序运行过程吧!
首先,程序询问用户名,并“”一声提示注册成功
然后,随机设置初始积分
选择您要做的事件
看到第4个图了吗?那是触发敏感词了马上会被随机扣分
其他见程序内帮助
OK,上代码
  1. #include<iostream>
  2. #include<string>
  3. #include <cstdlib>
  4. #include<windows.h>
  5. #include<time.h>
  6. using namespace std;
  7. string name;
  8. int yu=1;//鱼币
  9. int ry=1;//荣誉
  10. int gx=1;//贡献
  11. int jsz=1;//技术值
  12. int cb=1;//C币
  13. void jfxs()
  14. {
  15.         cout<<"您剩余鱼币:"<<yu<<endl;
  16.         cout<<"您剩余荣誉:"<<ry<<endl;
  17.         cout<<"您剩余贡献:"<<gx<<endl;
  18.         cout<<"您剩余技术值:"<<jsz<<endl;
  19.         cout<<"您剩余C币:"<<cb<<endl;
  20. }
  21. void live()
  22. {
  23.         cout<<"欢迎你来到鱼C生活~"<<endl;
  24.         cout<<"请告诉我你的名字:";
  25.         cin>>name;
  26.         cout<<"注册成功!你的名字是:"<<name<<endl<<"如有问题访问fishc.com.cn哦"<<endl;
  27.         Beep(800,200);
  28.         Sleep(1500);
  29.         system("cls");
  30. }
  31. void start()
  32. {
  33.         srand((int)time(0));
  34.         yu=1 + rand() % 20;
  35.         ry=1 + rand() % 20;
  36.         gx=1 + rand() % 10;
  37.         jsz=1 + rand() % 10;
  38.         cb=1 + rand() % 10;
  39.         cout<<name<<",你现在的初始鱼币是(系统默认赠送从1到20取随机数)"<<yu<<endl;
  40.         cout<<name<<",你现在的初始荣誉是(系统默认赠送从1到20取随机数)"<<ry<<endl;
  41.         cout<<name<<",你现在的初始贡献是(系统默认赠送从1到10取随机数)"<<gx<<endl;
  42.         cout<<name<<",你现在的初始技术值是(系统默认赠送从1到10取随机数)"<<jsz<<endl;
  43.         cout<<name<<",你现在的初始C币是(系统默认赠送从1到10取随机数)"<<cb<<endl;
  44.         system("pause");
  45.         system("cls");
  46. }
  47. void help()
  48. {
  49.         int p;
  50.         cout<<"请问您是否需要帮助?"<<endl;
  51.         cout<<"跳过输入1,查看输入2:" ;
  52.         cin>>p;
  53.         if(p==2)
  54.         {
  55.                 cout<<"发帖增加1~3荣誉,1~2鱼币,1贡献,其他事项跟鱼C差不多、字数达30字可以触发神秘大礼~"<<endl;
  56.                 cout<<"评分会随机增加C币,但会消耗0~5枚荣誉、鱼币和0~3枚贡献"<<endl;
  57.                 cout<<"发表回复可以增加1荣誉、随机鱼币"<<endl;  
  58.                 cout<<"帖子触及设定的敏感词也会被扣分且删除"<<endl;
  59.         }
  60.         system("pause");
  61.         system("cls");
  62. }
  63. void ft()
  64. {
  65.         string title;
  66.         string nr;
  67.         int ybj;//扣去的鱼币
  68.         int ryj;//扣去的荣誉
  69.         srand((int)time(0));
  70.         ybj=1 + rand() % 5;
  71.         ryj=1 + rand() % 5;
  72.         cout<<"现在来到鱼C帖子编辑器"<<endl;
  73.         cout<<"请输入帖子标题(输入exit可退出编辑):";
  74.         cin>>title;
  75.         if(title=="1"||title=="水帖"||title=="蹭一下"||title==""||title=="无"||title=="刷一下"||title=="a"||title=="e")
  76.         {
  77.                 cout<<"发现刷分行为,您的帖子已被删除,您的鱼币减去"<<ybj<<",您的荣誉减去"<<ryj<<endl;
  78.                 jfxs();
  79.                 yu-=ybj;
  80.                 ry-=ryj;
  81.                 system("pause");
  82.                 system("cls");
  83.                 return;
  84.         }
  85.         if(title!="exit")
  86.         {
  87.                 cout<<"记录成功,您的标题为:"<<title;
  88.                 system("cls");
  89.                 cout<<"正在编辑{"<<title<<"}帖子,操作人用户名为"<<name<<endl;
  90.                 cout<< "请输入帖子内容(1行)(输入exit可退出编辑):";
  91.                 cin>>nr;
  92.                 if(nr!="exit")
  93.                 {
  94.                         if(nr=="1"||nr=="水帖"||nr=="蹭"||nr==""||nr=="无"||nr=="刷一下"||nr=="a"||nr=="e")
  95.                         {
  96.                                 cout<<"发现刷分行为,您的帖子已被删除,您的鱼币减去"<<ybj<<",您的荣誉减去"<<ryj<<endl;
  97.                                 yu-=ybj;
  98.                                 ry-=ryj;
  99.                                 system("pause");
  100.                                 system("cls");
  101.                                 return;
  102.                         }
  103.                         cout<<"发帖完成!"<<endl;
  104.                         cout<<"您的荣誉+"<<ryj<<",您的鱼币+"<<ybj<<"您的贡献+1"<<endl;
  105.                         ry+=ryj;
  106.                         yu+=ybj;
  107.                         gx++;
  108.                         jfxs();
  109.                         system("pause");
  110.                         system("cls");
  111.                 }
  112.         }

  113. }
  114. void ht()
  115. {
  116.         string nr;
  117.         int jl;
  118.         jl=1+rand()%5;
  119.         srand((int)time(0));
  120.         cout<<"欢迎进行回帖,您现在有5种方式,100鱼币,10鱼币,5鱼币,1鱼币和无奖励五种,回复后将随机抽取"<<endl;
  121.         cout<<"请输入您的回帖内容(输入exit退出编辑,请勿灌水,灌水直接扣除5鱼币5荣誉)";
  122.         cin>>nr;
  123.         if(nr=="1"||nr=="水帖"||nr=="蹭"||nr==""||nr=="无"||nr=="刷一下"||nr=="a"||nr=="e")
  124.         {
  125.                 cout<<"发现刷分行为,您的帖子已被删除,您的鱼币-5,您的荣誉-5"<<endl;
  126.                 yu-=5;
  127.                 ry-=5;
  128.                 system("pause");
  129.                 system("cls");
  130.                 return;
  131.         }
  132.         if(nr!="exit")
  133.         {
  134.                 cout<<"回帖发表成功!您目前抽中的是";
  135.                 if(jl==1)
  136.                 {
  137.                         cout<<"100鱼币!"<<endl;
  138.                         yu+=100;
  139.                 }
  140.                 if(jl==2)
  141.                 {
  142.                         cout<<"10鱼币!"<<endl;
  143.                         yu+=10;
  144.                 }
  145.                 if(jl==3)
  146.                 {
  147.                         cout<<"5鱼币!"<<endl;
  148.                         yu+=5;
  149.                 }
  150.                 if(jl==4)
  151.                 {
  152.                         cout<<"1鱼币!"<<endl;
  153.                         yu+=1;
  154.                 }
  155.                 if(jl==5)
  156.                 {
  157.                         cout<<"很遗憾,没有奖励"<<endl;
  158.                 }
  159.                 cout<<"还会收获1荣誉!"<<endl;
  160.                 ry++;
  161.                 jfxs();
  162.                 system("pause");
  163.                 system("cls");
  164.         }

  165.         
  166. }
  167. void abc()
  168. {
  169.         int ybj,ryj,gxj,cbj;
  170.         int p;
  171.         srand((int)time(0));
  172.         ybj=1 + rand() % 3;
  173.         ryj=1 + rand() % 3;
  174.         gxj=1 + rand() % 3;
  175.         cbj=1 + rand() % 5;
  176.         cout<<"请问您现在要干什么?" <<endl;
  177.         cout<<"1.发帖 2.显示积分 3.给帖子评分"<<endl;
  178.         cout<<"4.回帖 "<<endl;
  179.         cout<<"请输入操作项目前的数字:";
  180.         cin>>p;
  181.         if(p==1)
  182.         {
  183.                 ft();
  184.         }
  185.         if(p==2)
  186.         {
  187.                 jfxs();
  188.                 system("pause");
  189.                 system("cls");
  190.         }
  191.         if(p==3&&yu>=ybj&&gx>=gxj)
  192.         {
  193.                 cout<<"您已评分鱼币"<<ybj<<",您已评分荣誉"<<ryj<<",您已评分贡献"<<gxj<<",您已收获C币"<<cbj<<endl;
  194.                 yu-=ybj;
  195.                 gx-=gxj;
  196.                 ry-=ryj;
  197.                 cb+=cbj;
  198.                 jfxs();
  199.                 system("pause");
  200.                 system("cls");
  201.         }
  202.         if(p==3)
  203.         {
  204.                 cout<<"如果您收到评分成功提示,说明您已评分成功,否则为某项无相应积分,可增加积分或重新再试(更换随机数)"<<endl;
  205.                 system("pause");
  206.                 system("cls");
  207.          }
  208.          if(p==4)
  209.          {
  210.                  ht();
  211.          }
  212. }
  213. int main()
  214. {
  215.         live();
  216.         start();
  217.         help();
  218.         while(true)
  219.         {
  220.                 abc();
  221.         }
  222. }
复制代码
这边没有C++的可以下载现成exe文件
鱼C生活(源码 成品).zip (437.44 KB, 下载次数: 7)
还有一个活动,您可以帮我添加敏感词
请跟我上代码
  1. || nr=="+ 敏感词内容 "
复制代码
并且在第二行再上代码
  1. || title=="+ 敏感词内容 + "
复制代码
OK,再见
上一期:鸡兔同笼
下一期:二叉树问题

评分

参与人数 2荣誉 +4 鱼币 +4 收起 理由
陈尚涵 + 2 + 2 鱼C有你更精彩^_^
zhangjinxuan + 2 + 2 鱼C有你更精彩^_^

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-10-30 18:28:28 | 显示全部楼层
本帖最后由 高山 于 2022-10-30 18:29 编辑

@不二如是 @zhangjinxuan @hveagle @陈尚涵 @编程追风梦 @元豪 @xiaosi4081 @漫星闪  求支持
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-30 19:01:41 From FishC Mobile | 显示全部楼层
做的真有创意,一定要顶~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-10-30 19:03:23 | 显示全部楼层
zhangjinxuan 发表于 2022-10-30 19:01
做的真有创意,一定要顶~

谢谢,对了,你也有灌水大师了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-30 19:13:34 | 显示全部楼层

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
高山 + 1 + 1 谢谢!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-10-31 19:28:21 | 显示全部楼层
做的真不戳
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-3 18:55:43 | 显示全部楼层
嗯,记得上一篇链接

  1. || nr.size()<=1
  2. || title.size()<=1
复制代码

还可以看长度~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-5 09:50:33 | 显示全部楼层
哇!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-11-5 09:55:57 | 显示全部楼层
怼bug:
输入英文会刷频。@高山
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-6 13:04:57 | 显示全部楼层
好厉害的样子,可惜代码一行都看不懂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-6 22:34:20 | 显示全部楼层
有趣味性的东西总是能让人很喜欢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-7 14:25:00 | 显示全部楼层
本帖最后由 Jason茗 于 2022-11-7 14:27 编辑

提个意见哈:我起的名字带空格,结果空格后面的名字就神秘失踪了……

看看能不能修复一下,提供两个思路:
1、禁止取带有空格的名字
2、取完带空格的名字可以把全名保存
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-7 14:32:33 | 显示全部楼层
Jason茗 发表于 2022-11-7 14:25
提个意见哈:我起的名字带空格,结果空格后面的名字就神秘失踪了……

看看能不能修复一下,提供两个思路 ...

还有,取完名字之后,问我需不需要帮助,结果我试过了,不管点1还是2,都会陷入一个死循环,导致我用Ctrl+C强制退出了

用一个不带空格的名字就没事
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-7 14:33:21 | 显示全部楼层
Jason茗 发表于 2022-11-7 14:32
还有,取完名字之后,问我需不需要帮助,结果我试过了,不管点1还是2,都会陷入一个死循环,导致我用Ctrl ...

可以亲自试一试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-7 14:34:34 | 显示全部楼层
Jason茗 发表于 2022-11-7 14:25
提个意见哈:我起的名字带空格,结果空格后面的名字就神秘失踪了……

看看能不能修复一下,提供两个思路 ...

我只能提供思路了,C++我不太会,也没法帮忙改
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-7 14:41:11 | 显示全部楼层
建议:可不可以添加一个储存数据功能,这样不用每次来都从头开始(同时配套一个删除存档功能)

存档就存在玩家的电脑上
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-7 14:43:33 | 显示全部楼层
元豪 发表于 2022-11-5 09:55
怼bug:
输入英文会刷频。@高山

准确的来讲,是问你进行什么操作让你输1234的时候输入字母会触发(看起来触发死循环式刷屏的方法不少啊,我再去瞅瞅还有没有)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-7 14:46:38 | 显示全部楼层
本帖最后由 Jason茗 于 2022-11-7 15:08 编辑

我发现,发帖的内容为“12”时不会扣分,看看能不能设置输入纯数字为触发敏感词
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-7 15:07:39 | 显示全部楼层
Jason茗 发表于 2022-11-7 14:32
还有,取完名字之后,问我需不需要帮助,结果我试过了,不管点1还是2,都会陷入一个死循环,导致我用Ctrl ...

结尾是空格也没事,空格后面带东西就得出事
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-7 17:35:32 | 显示全部楼层
Jason茗 发表于 2022-11-7 14:32
还有,取完名字之后,问我需不需要帮助,结果我试过了,不管点1还是2,都会陷入一个死循环,导致我用Ctrl ...

我也遇到过这样的事情,你退出重进程序就OK了,还有空格的问题,我不太会
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 15:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表