用C语言制作初级版小游戏(剪刀石头布)

代码展示:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
        //石头0,剪刀1,布2的游戏
        int u_select=0;
        int p_select=0;
        int p=0,u=0;                    //设置俩个变量作为用户或电脑胜利的判定
        printf("请用户输入0.石头,1.剪刀,2.布三者中其一:\n");

        //先赢三场者胜利
        while(p<3&&u<3)
        {
                scanf("%d",&u_select);   //通过键盘让用户进行输入
                srand(time(NULL));      //随机函数rand();使用srand()进行随机播种
                p_select=rand()%3; //对随机函数给出的数值取余得到0,1,2,的随机数
                switch(p_select)
                {
                        case 0:
                        {
                                        if(0==u_select)
                                        {
                                                printf("平局\n");
                                        }
                                        else if(1==u_select)
                                        {
                                                printf("电脑赢一局\n");
                                                p++;
                                        }
                                        else if(2==u_select)
                                        {
                                                printf("用户赢一局\n");
                                                u++;
                                        }
                                        break;
                                }
                        case 1:
                                {
                                        if(1==u_select)
                                        {
                                                printf("平局\n");
                                        }
                                        else if(2==u_select)
                                        {
                                                printf("电脑赢一局\n");
                                                p++;
                                        }
                                        else if(0==u_select)
                                        {
                                                printf("用户赢一局\n");
                                                u++;
                                        }
                                        break;
                                }
                        case 2:
                                {       if(2==u_select)
                                        {
                                                printf("平局\n");
                                        }
                                        else if(0==u_select)
                                        {
                                                printf("电脑赢一局\n");
                                                p++;
                                        }
                                        else if(1==u_select)
                                        {
                                                printf("用户赢一局\n");
                                                u++;
                                        }
                                        break;
                                }
                }
                if(p==3)
                {
                        printf("电脑胜%d盘,用户胜%d盘,电脑胜利\n",p,u);
                }
                else if(u==3)
                {
                        printf("用户胜%d盘,电脑胜%d盘,用户胜利\n",u,p);
                }
        }
                return 0;
}

C语言知识:

以上代码我使用了俩个不常见的头文件。

<stdlib.h>头文件 是一个包含通用函数、内存管理函数和变量转换函数的库。它提供了许多用于执行标准任务的函数,例如动态内存分配、随机数生成和字符串到数值的转换。

<time.h>头文件是一个包含了日期和时间相关函数的重要库,它定义了用于处理时间和日期的变量类型,宏以及函数。

函数原型:

1. 函数原型和用法
 原型说明:rand()函数的原型为`int rand(void)`,它不接受任何参数,返回一个范围在0到RAND_MAX之间的伪随机数,是一个正态分布函数。
 使用方式:rand()函数通常与srand()函数配合使用,后者用于设置rand()函数的种子,从而改变rand()函数生成的随机数序列。如果不设置种子,rand()函数每次程序运行时都会生成相同的随机数序列,这通常不是我们想要的结果。通过设置不同的种子,可以得到不同的随机数序列。
 时间作为种子:常用的设置种子的方法是使用当前时间作为种子srand((unsigned)time(NULL))`。这样可以确保每次程序运行时都能得到不同的随机数序列。
为了使它输出的值变为三个随机值,我使用%运算符%3取余使随机数变为0,1,2这三个数。

在上述代码中我使用了while循环,if-else.switch分支结构。

这些都是C语言中的基础结构但却是c语言的重要组成部分,通过基础结构的架构和嵌套使用就可以完成许多复杂的C语言程序的编写,正确和高效地使用C语言的基础结构对任何一个程序员来说都是一项基本技能。

while(循环条件){   条件为真进入循环,一但条件为假退出循环

        循环体;

        更新循环变量;(防止成为死循环)

}

在这里我使用了while循环,但还有do-while循环感兴趣的同学可以去使用它。

if-else:

if(判断条件1){

        语句块1;

}

else if(判断条件2){

        语句块2;

}

.......

else{        //以上判断条件之外的情况,但else后不加(判断条件)

        语句块n;

}

switch多分支选择结构:

switch(表达式)/表达式类型:int char 枚举等{

        case 常量1:

                        语句块1;break;        //break用于跳出switch语句,防止继续执行下一个case语句

        case 常量2:

                        语句块2;break;

        ......

        default:                                //无匹配的case语句则执行default语句

                        语句块n;break;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值