该题需要用到的头文件<stdio.h>,<time.h>,<stdlib.h>。
思路依旧是for循环,然后输入数字。
上代码,有注释。
#include<stdio.h>#include<stdlib.h>#include<time.h>int main(){int yournumber, mynumber; /*定义猜数与被猜数两个变量*/int i, n;printf("请输入猜测的次数:");scanf("%d", &n);srand(time(0)); /*srand()从系统文件<stdlib.h>中调用*/mynumber = rand() % 100 + 0; /*产生随机数,100表示产生100个数,0表示产生大于0的数*/for (i = 1; i <= n; i++) /*开始循环*/{printf("第%d次:", i);scanf("%d", &yournumber);if (yournumber < 0){i = n + 1;break; /*输入负数,直接结束循环,Game Over*/}if (yournumber < mynumber)printf("小了\n");else if (yournumber>mynumber)printf("大了\n");if (yournumber == mynumber){printf("猜中了\n");break; /*猜中,结束循环,此时的i用于判断猜中需要的次数*/}}if (i == 1)printf("Bingo!\n");else if (i <= 3)printf("Lucky You!\n");else if (i <= n)printf("Good Guess!\n");elseprintf("Game Over!\n");return 0;}
当然这游戏可能不是很人性化,我们可以带着提高编程能力的想法在此基础上加以改善。