源码如下:
/*File:guess.c*/
#include
#include
#include
/*宏定义*/
#defineNUMBER_LENGTH5/*随机数长度*/
#defineNUMBER_LIMIT10/*随机数限制,每一位0-9*/
#defineINPUT_LENTH128/*输入缓冲区大小*/
chargoal[NUMBER_LENGTH]={0};/*保存随机数*/
charflag[NUMBER_LIMIT]={0};/*保存随机数标志,保证不重复*/
charinput[INPUT_LENTH]={0};/*保存输入*/
/*初始化用于保存数据的数组*/
voidinitData()
{
inti=0;
while(i goal[i++]=0; i=0; while(i { flag[i++]=0; } } /*初始化用于保存缓冲区的数组*/ voidinitBuffer() { inti=0; while(i input[i++]=0; } /*显示猜测结果*/ voiddisplay() { intcount=0; inti=0; while(i { if(input[i]==goal[i]) { printf("%c",'o'); count++; } else { printf("%c",'x'); } i++; } printf("\nRIGHT:%dbit(s)\n",count); if(count==NUMBER_LENGTH) { printf("Youwin!Thenumberis%s.\n",goal); exit(0); } } /*生成随机数*/ voidgeneral() { /*以时间作为时间种子保证生成的随机数真正具有随机性质*/ srand((unsignedint)time(NULL)); inti=0; while(i { chartmp; do { tmp='0'+((i!=0)?(rand()%10):(1+rand()%9)); }while(flag[tmp]!=0); flag[tmp]=1; goal[i++]=tmp; } } /*输入方法,用于猜测*/ voidguess() { printf("Pleaseinputthenumberyouguessed:\n"); scanf("%s",input); display(); initBuffer(); } /*主函数,程序主框架*/ intmain(intargc,constchar*argv[]) { initData(); initBuffer(); general(); while(1)guess(); return0; } ============================================== 运行结果见附图,希望我的回答能够对你有所帮助。 一个函数用于生成一个随机数 再用一个函数进行三次循环 如果循环中输入的数字猜对了就返回1如果三次循环结束则返回0 主数字判断返回的结果如果是1则表示猜对否则表示猜错 然后询问是否继续进行猜数字游戏 下面是一个简单的代码 #include #include voidclean_input_buf(void) { while(getchar()!='\n'); } intmake_num(intnum) { srand(num); return1+rand()%20; } intguess_num(void) { inti=3; intn; intnum; num=make_num(clock()); while(i) { printf("请输入一个你猜的数字:"); scanf("%d",&n); if(n==num) return1; clean_input_buf(); --i; } return0; } intmain(intargc,char**argv) { charc; printf("猜数字游戏!\n游戏要猜测的数字为1-20,每个数字可以猜测3次!\n"); while(1) { if(guess_num()==1) printf("恭喜你,你猜中了!\n"); else printf("很遗憾,你猜错了!\n"); redo: printf("还要继续游戏吗?继续输入Y否则输入N!\nY/N:"); c=getchar(); clean_input_buf(); if(c=='Y'||c=='y') continue; elseif(c=='N'||c=='n') break; else { printf("输入错误,请重新输入!\n"); gotoredo; } } return0; } 适合计算机编程的游戏如下: 1、Coding Games 一边玩游戏,一边挑战编程难题。Coding games支持包括PHP、C、JavaScript在内的20多种编程语言。用户界面功能强大,可以定制。 2、CodeCombat(极客战记) CodeCombat是一款网页编程游戏。这款编程游戏借鉴了游戏的很多设计元素,游戏剧情十分丰富。当你打开CodeCombat网站,你不会觉得这是一个让你看不懂的代码学习网站,因为他的网站外观看起来就像是一个魔兽争霸风格的线上游戏,而且当你实际玩玩看,你会发现过程真的就是英雄要去打怪、寻宝与解谜,只是搭配了程序语言的学习。 3、Screeps 如果你想学习JavaScript,那Screeps是一个很好的选择,Screeps是一个为JavaScript程序员准备的大型多人在线游戏(MMO)。 这个游戏是一个开放的策略游戏,游戏中你控制的单位被称为“creeps”,它可以帮你获得资源、建立自己的领地等等。作为一个多人在线游戏,游戏中你的creeps会被其他玩家的creeps包围。 4、Checkio Check iO是一个基于浏览器的游戏,你需要使用Python或JavaScript来解决问题才能将游戏进行下去(需要登录)。 5、Vim Adventures 顾名思义,这个网站让你通过玩游戏来学习Vim。二、C语言题目 编程实现数字猜谜游戏!
三、适合计算机编程的游戏
上一篇:编程知识闯关游戏
下一篇:编花篮游戏的知识技能目标