当前位置: 首页 > news >正文

如何做网上水果网站系统aspnet东莞网站建设多少钱

如何做网上水果网站系统,aspnet东莞网站建设多少钱,杭州网站建设hzfwwl,浙江嘉兴发现2例新冠阳性前面介绍过很多的C语言常识#xff0c;但是我们都知道“兴趣是最好的老师”#xff0c;所以#xff0c;今天我们用之前讲过的一些知识#xff0c;加上部分新补充的知识点#xff0c;写一个“猜数字”的小游戏#xff0c;来丰富我们的编程学习生活#xff0c;感受来自C语…前面介绍过很多的C语言常识但是我们都知道“兴趣是最好的老师”所以今天我们用之前讲过的一些知识加上部分新补充的知识点写一个“猜数字”的小游戏来丰富我们的编程学习生活感受来自C语言的趣味性。 目录 1.猜数字游戏的大致流程 2.游戏实现的思路 3.随机数生成 3.1rand 3.2srand 3.3time 3.4随机数范围设置 4.猜数字游戏的代码实现 5.猜数字游戏的优化 1.猜数字游戏的大致流程 首先由计算机产生一个随机数并给出这个随机数所在的区间然后由玩家来猜测这个数如果玩家猜中这个数则显示成功并结束本轮游戏如果猜测次数超过8次则显示猜测失败并结束本轮游戏。 2.游戏实现的思路 我们在写编程题或者小游戏代码时最重要的就是理清思路——主体是什么为了实现目的要创建哪些函数函数的功能都是什么只有当我们心中有了一个大体的框架知道该做些什么时我们才能更高效地编写代码完成程序设计。 猜数字游戏的算法如下 1.提供游戏菜单由玩家选择是否进行游戏按“1”开始游戏按“0”推出游戏按其他则显示“选择错误请重新选择”。 2.开始游戏后先初始化猜测次数count 0 3.重复执行下述操作直到count达到8次         3.1玩家输入一个数guess进行猜测         3.2count         3.2如果guess等于secret计算机产生的随机数跳出循环否则显示“错了请重新猜你还有8-count次猜测次数请把握好机会” 4.如果count达到8次则显示“超过次数游戏结束”否则显示“恭喜猜对了共猜测count次” 如上面所示这就是猜数字游戏大体框架的算法呈现。 我们在思考大体框架时不用过多在意具体函数的实现方法可以先起个能表达其功能的函数名并把它放在需要的位置。说白了就是先搞一个空壳函数占位置等到大体框架调试完毕不再有问题后再去实现这些空壳函数大体框架代码如下 #icludestdio.hint main() {int secret;//随机数怎么建立呢我们好像暂时也不清楚那么就先假设一个空壳的不用在意它。int input;do{ //menu函数在调试大体框架时也可以是空壳函数menu();//打印游戏菜单。我们建立函数可以让主函数不至于太过冗长而且增加了代码的可读性使程序模块化。printf(请选择:);scanf(%d, input);switch(input){case 1:guess(secret);//guess是用来猜测并判断是否正确的函数这里也是空壳函数break;case 0:printf(游戏结束\n);break;default:printf(选择错误请重新选择\n);break;}}while(input);return 0; } 上面的guess函数就是个空壳函数我们可以在把主体框架完成后再去实现。而guess函数的功能就是 ①guess玩家猜测数 secret则显示“恭喜猜对了同猜测count次” ②guess玩家猜测数 secret则显示“错了请重新猜你还有8-count次猜测机会请把握好机会” guess函数的代码实现如下 void guess(int secret) {int guess 0, count 0;do{printf(请输入一个整数:);scanf(%d, guess);count;if(guess secret) break;else pritnf(错了请重新猜你还有%d猜测次数请把握好机会\n,8-count);}while(count8);if(count 8)printf(恭喜猜对了共猜测%d次\n,count);elseprintf(超过次数游戏结束\n);} menu函数的代码实现如下 void menu() {printf(***********************\n);printf(****** 1. play ******\n);printf(****** 0. exit ******\n);printf(***********************\n); } 3.随机数生成 上面我们已经把大体框架和空壳函数都实现按照正常情况我们的代码已经完成了只需要调试使其能正常运行即可但是在这个游戏中我们还需要补充一个新的知识点——随机数的生成。 3.1rand C语言提供了随机数生成函数rand该函数返回0~RAND_MAX的一个随机整数RAND_MAX是在头文件stdlib.h中定义的符号常量其值与机器字长和编程环境有关一般为2^15-1或2^31-1。 rand函数原型为 int rand (void); #include stdio.h #include stdlib.h int main() {printf(%d\n, rand());printf(%d\n, rand());printf(%d\n, rand());printf(%d\n, rand());printf(%d\n, rand());return 0; } 大家可以测试两次上面的数据然后大家会发现随机数的建立到这一步还没有结束。 下面是我的代码两次运行结果大家品一品 我们可以看到虽然一次运行中产生的5个数字是相对随机的但是下一次运行程序生成的结果和上一次一模一样这就说明有点问题。 如果再深入了解一下我们就不难发现其实rand函数生成的随机数是伪随机的伪随机数不是真正的随机数是通过某种算法生成的随机数而真正的随机数的是无法预测下一个值是多少的。 rand函数是对一个叫“种子”的基准值进行运算生成的随机数。 之所以前面每次运行程序产生的随机数序列是一样的那是因为rand函数生成随机数的默认种子是1。 如果要生成不同的随机数就要让种子是变化的。 3.2srand C语言提供了库函数srand初始化随机种子例如可以调用库函数time得到当前的系统时间将当前系统时间作为随机种子。 srand函数的原型为 void srand (unsigned int seed); 程序中在调用rand函数之前先调用srand函数通过srand函数的参数seed来设置rand函数生成随 机数的时候的种子只要种子在变化每次生成的随机数序列也就变化起来了。那也就是说给srand的种子是如果是随机的rand就能生成随机数在生成随机数的时候又需要一个随机数这就矛盾了该怎么解决呢  3.3time C语言提供一个函数time用来获得系统时间。 time函数的原型为 time_t time (time_t* timer); time函数会返回当前的日历时间其实返回的是1970年1月1日0时0分0秒到现在程序运行时间之间的差值单位是秒。返回的类型是time_t类型的time_t 类型本质上其实就是32位或者64位的整型类型 。 time函数的时候需要包含头文件time.h 综合上面三个函数及介绍则随机数生成代码实现为 srand((unsigned int)time(NULL));//初始化随机种子 rand( );//产生随机数 3.4随机数范围设置 既然是随机数那么就会从0~RAND_MAX中随机生成一个数字那我们能猜对吗答案是显然的别说是八次机会就是八十次都不一定能猜对。所以为了照顾玩家的游戏体验我们也必须设置随机数的范围让它更为科学和合理。 如果我们要生成0~99之间的随机数方法如下 rand() %100;//余数的范围是0~99 如果我们要生成1~100之间的随机数方法如下 rand()%1001;//%100的余数是0~99,0~99的数字1,范围是1~100 如果我们要生成a~b之间的随机数方法如下 a rand()%(b-a1) 4.猜数字游戏的代码实现 前面的准备工作已经做完了那么就整合所有模块一起来见证我们努力的成果吧 #includestdio.h #include stdlib.h #include time.h//记得检查所需的函数头文件都引用没有哦 void menu() {printf(***********************\n);printf(****** 1. play ******\n);printf(****** 0. exit ******\n);printf(***********************\n); }void guess(int secret) {int guess 0, count 0;do{printf(请输入一个整数:);scanf(%d, guess);count;if(guess secret) break;else printf(错了请重新猜你还有%d猜测次数请把握好机会\n\n,8-count);}while(count8);if(count 8)printf(恭喜猜对了共猜测%d次\n,count);elseprintf(超过次数游戏结束\n);}int main() {srand((unsigned int)time(NULL));int input 0;srand((unsigned int)time(NULL));do{ int secret rand() %100;//生成0~99之间的随机数 //menu函数在调试大体框架时也可以是空壳函数menu();//打印游戏菜单。我们建立函数可以让主函数不至于太过冗长而且增加了代码的可读性使程序模块化。printf(请选择:);scanf(%d, input);switch(input){case 1:guess(secret);//guess是用来猜测并判断是否正确的函数这里也是空壳函数break;case 0:printf(游戏结束\n);break;default:printf(选择错误请重新选择\n);break;}}while(input);return 0; } 上面的代码进行了细微的调整——把rand的随机种子初始化放在do之前然后把随机数的生成放在do…while语句中这样我们每一轮游戏所猜的数字都是不同的且不必重复初始化随机种子。 5.猜数字游戏的优化 我们玩几局就会发现虽然限制了随机数的范围但想在8次机会中猜对还是有些难度所以为了我们亲爱的玩家我们就再降低难度——当他们猜完数字后给他们提示“猜大了”或者“猜小了” 优化后的代码如下 #includestdio.h #include stdlib.h #include time.h//记得检查所需的函数头文件都引用没有哦 void menu() {printf(***********************\n);printf(****** 1. play ******\n);printf(****** 0. exit ******\n);printf(***********************\n); }void guess(int secret) {int guess 0, count 0;do{printf(请输入一个整数:);scanf(%d, guess);count;if(guess secret) break;else if(guess secret){if(count ! 8) printf(猜大了请重新猜你还有%d猜测次数请把握好机会\n\n,8-count);else printf(可惜最后还是猜大了\n);} else{if(count ! 8) printf(猜小了请重新猜你还有%d猜测次数请把握好机会\n\n,8-count);else printf(可惜最后还是猜小了\n);}}while(count8);if(count 8)printf(恭喜猜对了共猜测%d次\n,count);elseprintf(不好意思次数已用完游戏结束\n);}int main() {srand((unsigned int)time(NULL));int input 0;srand((unsigned int)time(NULL));do{ int secret rand() %100;//生成0~99之间的随机数 //menu函数在调试大体框架时也可以是空壳函数menu();//打印游戏菜单。我们建立函数可以让主函数不至于太过冗长而且增加了代码的可读性使程序模块化。printf(请选择:);scanf(%d, input);switch(input){case 1:guess(secret);//guess是用来猜测并判断是否正确的函数这里也是空壳函数break;case 0:printf(游戏结束\n);break;default:printf(选择错误请重新选择\n);break;}}while(input);return 0; } 猜数字小游戏到这里算是结束喽不知道大家学习的过程辛苦不辛苦反正我是痛并快乐着的 关于猜数字的更多玩法和可能性就全权交由聪明的大家了。当然大家有啥好想法又不想一个人搞的也可以在评论区发出来大家一起交流交流研究研究。
http://www.pierceye.com/news/192891/

相关文章:

  • 高校网站建设说明书微信公众号涨粉 网站
  • 深圳网站建设公司哪里好中国施工企业管理协会官网
  • 网站自动抢注步步高学习机进网站怎么做
  • 带域名的网站打不开深圳网站优化多少钱
  • 中国空间站科幻作文1000字网站建设从化
  • 做网站买一个域名就够了吗cn域名知名网站
  • 社科联网站建设个人网页英文
  • 做房产推广那个网站好网站改版建设原则
  • 网站建设 语言成都app
  • 免费建站的手机app专业做网站设计公司价格
  • 江苏宜兴做网站的电话seo基础培训
  • 企业手机端网站模板下载济南公司建站模板
  • 一般公司做网站多少钱南昌市房产网
  • 惠州网站小程序建设做公司永久免费网站什么好
  • 湖南涟钢建设有限公司网站局网站建设工作总结
  • 家乡ppt模板免费下载网站合肥百姓网网站建设
  • 免费整套ppt模板下载网站东莞建设教育网站
  • 漯河网站建设漯河ps制作个人网站首页
  • 电商网站公司软件开发和软件研发
  • 网站建设浙江公司网站开发运营新人要注意什么
  • 外贸网站模板哪里下载家里电脑可以做网站服务器吗
  • 长沙门户网站北京设计网站的公司
  • 站长统计平面设计找工作难吗
  • seo建站公司推荐电商平台活动策划方案
  • 建设淘宝客网站.lc和ev手机对比平台
  • vue 做企业网站特产网站开发背景
  • 奉新网站制作dede视频网站源码
  • 做动画网站去哪采集建设网站需要的资金清单
  • 网站后台发邮件注册公司需要什么证件和手续
  • 炫酷特效网站万网虚拟主机免费空间