用Python和C语言分别实现了相同的功能(见下图)
发现两者确实是各有优势,反正我在写Python时总想在语句末尾加上“;”,“print”也老是写成“printf”。。。
Python
""" 用Python设计第一个游戏(修改版) """
import random #引入random模块https://github.com/python/cpython/blob/3.11/Lib/random.py
i = 1
while 1:
a = random.randint(1,99)
#生成范围在1~99的伪随机数,可用x = random.getstate()/random.randint(a,b)*n/random.setstate(x)/random.randint(a,b)*n复现伪随机数
print(i,"猜数游戏(1~99)")
while 1:
temp = input()
guess = int(temp)
if guess >= 1 and guess <= 99:
if guess == a:
print("答对了")
print("对了也没奖励ƪ(˘⌣˘)ʃ\n")
break
else:
if guess > a:
print("大了呕")
else:
print("好小喔(。_。)")
else:
print("呃>︿<受不了辣!!!")
i += 1
print("大人,时代变辣\n")
C语言这个来源于很早之前写的一大坨代码里的一小段(见下图)
由于有个功能的bug一直没修,我实在是没脸把源码贴上去🥲,只把与上文中Python代码功能相同的部分附上
C语言
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <time.h>
int main()
{
int a,b,i;
i=1;
while(1)
{
srand((unsigned)time(NULL));//生成随机数,因为用到了time()函数,需搭配“#include <time.h>”使用
a=(rand()%99)+1;//将随机数的范围限制为1~99
printf("%2d.猜数游戏\n",i);
printf("范围是1~99\n");
while(1)
{
printf("> ");
scanf("%d",&b);
if(b==0)
if (b>=1&&b<=99)
{
if(b>a)
printf("大了,请继续\n");
if(b<a)
printf("小了,请继续\n");
if(b==a)
{
printf("对了\n\n");
Sleep(1500);
break;
}//循环体,猜数游戏的主体
}
else
printf("超出范围\n");
}
i++;
}
system("pause");
return 0;
}
版权声明:本文为nangongjing原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。