C语言程序游戏:剪刀-石头-布

C语言程序游戏:剪刀-石头-布

  • 题目

游戏规则,剪刀赢布,布赢石头,石头赢剪刀,出的相同则平局。设计思路:程序生成随机数,随机数在[0,RAND_MAX/3)之间表示出石头,在[RAND_MAX/3, 2RAND_MAX/3] 之间表示出剪刀,在(2RAND_MAX/3, RAND_MAX]之间表示出布;提示用户输入 1(石头)、2(剪刀)或 3(布);判断用户输赢,输出结果。注意:程序要处理用户错误和恶意的输入。
可反复玩,直到用户输入程序结束指令为止。

  • 代码
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(){
	int a;
	a=-1;
	printf("*********************************\n");
    printf("     欢迎来玩 石头、剪刀、布     \n");
	printf("*********************************\n");
	while(a!=0){ 
    
	    int s=rand();
		void randnum(int y); 
		randnum(s); 
		printf("是否继续?是输入1,否输入0:");
	    int ret=scanf("%d",&a);
	    
	    if(ret==0||a>=2){
			exit(1);
		}
		s=0;
	}
	printf("**********谢谢使用本程序*********");	
	exit(1);
	printf("\n");
	system("pause");
	return 0;
} 
void randnum(int y){
	int x;
	printf("请输入1、2或3(3-石头,2-剪刀,1-布):"); 
	scanf("%d",&x);   
	if(y>=0&&y<RAND_MAX/3){
       printf("机器:石头 <> ");
       if(x==1){
	   	printf("您:布\n");
	    printf("^:^赢了^:^\n\n");
	   }else if(x==2){
	   	printf("您:剪刀\n");
	    printf("^:^输了!^:^\n\n");
	   }else if(x==3){
	    printf("您:石头\n");
	    printf("^:^平手!^:^\n\n");
	   }
	}else if(y>=RAND_MAX/3&&y<=2*RAND_MAX/3){
	       printf("机器:剪刀 <> ");
	       if(x==1){
		   	printf("您:布\n");
		    printf("^:^输了!^:^\n\n");
		   }else if(x==2){
		   	printf("您:剪刀\n");
		    printf("^:^平手!^:^\n\n");
		   }else if(x==3){
		    printf("您:石头\n");
		    printf("^:^赢了^:^\n\n");
		   }
	}else if(y>2*RAND_MAX/3&&y<=RAND_MAX){
	          printf("机器:布 <> ");
	  	       if(x==1){
	  		   	printf("您:布\n");
	  		    printf("^:^平手!^:^\n\n");
	  		   }else if(x==2){
	  		   	printf("您:剪刀\n");
	  		    printf("^:^赢了^:^\n\n");
	  		   }else if(x==3){
	  		    printf("您:石头\n");
	  		    printf("^:^输了!^:^\n\n");
	  		   }
	}
	
} 
  • 运行效果
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值