Go语言实现猜数字小游戏

利用Go语言实现一个四位数字,而且不重复的猜数字游戏,解题思路是先利用rand随机函数产生一个四位数,然后通过切片进行引用传递,设定用户可以输入的数字,最后分别遍历切片四位数字与产生的四位数是否相同

package main

import "fmt"
import(
 "math/rand"
 "time"
)

func CreateNum(p *int){
 //设置种子
 rand.Seed(time.Now().UnixNano())

 var num int
 for{
 num=rand.Intn(10000)//四位数
 if num>=1000{
  break
 }
 }
 //fmt.Println("num=",num)
 *p=num
}
func GetNum(s []int,num int){
 s[0]=num/1000   //取千位
 s[1]=num%1000/100 //取百位
 s[2]=num%100/10  //取十位
 s[3]=num%10    //取个位
}
func OnGame(randSlice []int){
 var num int
 keySlice:=make([]int,4)
 for{
 for{
  fmt.Printf("请输入一个四位数:")
  fmt.Scan(&num)

  if 999<num&&num<10000{
  break
  }
  fmt.Println("输入的数不符合要求...")
 }
 //fmt.Println("num=",num)
 GetNum(keySlice,num)
 //fmt.Println("keySlice=",keySlice)
 n:=0
 for i:=0;i<4;i++{
  if keySlice[i]>randSlice[i]{
  fmt.Printf("第%d位大了一点\n",i+1)
  }else if keySlice[i]<randSlice[i]{
  fmt.Printf("第%d位小了一点\n",i+1)
  }else{
  fmt.Printf("第%d位猜对了\n",i+1)
  n++
  }
 }
 if n==4{
  fmt.Println("恭喜您!全部猜对了!")
  break  //跳出最外层循环
 }
 }
}
func main(){
 fmt.Println("******欢迎进入猜数字游戏******")

 var randNum int
 CreateNum(&randNum)

 //fmt.Println("randNum=",randNum)

 randSlice:=make([]int,4) //保留四位数字的每一位
 GetNum(randSlice,randNum) //切片是引用传递
 //fmt.Println("randSlice=",randSlice)
 OnGame(randSlice)

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • go语言实现猜数字小游戏的方法

    本文实例讲述了go语言实现猜数字小游戏的方法.分享给大家供大家参考.具体分析如下: 随机生成一个数字,输入一个数字看是否匹对,匹配则结速,反之提示是大了还是小了 复制代码 代码如下: package main import (     "bufio"     "fmt"     "math/rand"     "os"     "strconv"     "time" ) var (  

  • C语言版猜数字小游戏

    本文实例为大家分享了C语言版猜数字小游戏的具体代码,供大家参考,具体内容如下 清楚实现目标 做任何一个小项目之前,我们首先都需要明确自己想要实现的目标. 所以猜数字游戏的实现目标是啥? 电脑随机给出一个目标数字,玩家进行猜测 电脑会根据玩家猜测的数字,提示猜大了还是小了 直到猜对为止,一轮游戏结束. 游戏结束会询问是否继续.1代表继续,0代表不继续. 游戏模式有3种(简单,普通,困难),对应内容分别为猜25次,15次,5次 游戏会记录你的战绩,在菜单中按2表示查询战绩. 明确逻辑结构 清楚的知道

  • 利用C语言实现猜数字小游戏

    本文实例为大家分享了C语言实现猜数字小游戏的具体代码,供大家参考,具体内容如下 实现猜数字的游戏: 要用程序完成以下几步: 1.电脑自动生成随机数(1到100之间的数字) 2.玩家输入自己猜的数字(输入0 -- 100之间的数字) 3.猜对了就输入:猜对了 猜错了就输入:猜大了,或者是猜小了 4.可以多次玩这个游戏. 任何程序都要从main函数开始去看: 找到下面程序中的main函数从那里开始分析: #define _CRT_SECURE_NO_WARNINGS 1 #include <stdi

  • C语言实现猜数字小游戏的示例代码

    目录 一.猜数字小游戏的要求 二.猜数字小游戏实现的过程 2.1项目创建 2.2头文件内容 2.3源文件内容 三.猜数字小游戏调试结果如下 四.基于猜数字小游戏的总结 五.完整代码 一.猜数字小游戏的要求 猜数字小游戏是我们小时候喜欢我们一个经典小游戏,在本文中,猜数字小游戏主要的功能如下所示 1.登入猜数字小游戏系统,显示小时欢迎界面. 2.用户猜的数字有系统随机在1-20之间生成. 3.用户可以有5次机会猜这个随机生成的数字. 4.若用户猜大了,则系统会显示猜大了,并提示还有多少猜数字的机会

  • C语言实现猜数字小游戏

    本文实例为大家分享了C语言猜数字的具体代码,供大家参考,具体内容如下 一.描述 猜数字游戏. 二. 程序 使用srand((unsigned)time(NULL)),产生随机数种子. int random = rand() % 100 + 1,产生0~100之间的随机数. 应加上头文件#include<time.h> #include<stdio.h> #include<windows.h> #include<time.h> void menu(){ pri

  • Go语言实现猜数字小游戏

    利用Go语言实现一个四位数字,而且不重复的猜数字游戏,解题思路是先利用rand随机函数产生一个四位数,然后通过切片进行引用传递,设定用户可以输入的数字,最后分别遍历切片四位数字与产生的四位数是否相同 package main import "fmt" import( "math/rand" "time" ) func CreateNum(p *int){ //设置种子 rand.Seed(time.Now().UnixNano()) var nu

  • C语言实现的猜数字小游戏

    本文实例为大家分享了C语言实现猜数字小游戏的具体代码,供大家参考,具体内容如下 代码如下 #include <stdio.h> #include<stdlib.h> #include<time.h> //rand为产生随机数的函数 void game() { srand((unsigned)time(NULL)); int key = (int)rand() % 100; //产生一个1---100之间的数 int ret = 0; while (1) { printf

  • C语言实现简单猜数字小游戏

    本文实例为大家分享了Java实现图片旋转的具体代码,供大家参考,具体内容如下 猜数字游戏是令游戏机随机产生一个100以内的正整数 用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较 并提示大了("Too big"),还是小了("Too small"),相等表示猜到了 如果猜到,则结束程序.程序还要求统计猜的次数,如果1次猜出该数,提示"Bingo!" 如果3次以内猜到该数,则提示"Lucky You!"

  • c语言轻松实现猜数字小游戏

    目录 一.前言 二.游戏逻辑 三.思维导图 四.游戏过程 五.代码分析 1.生成随机数的方法 2.设置随机数范围的方法 六.完整代码 一.前言 在学习了循环.分支.和函数之后,可以写一些简单的小游戏来给自己的编程之路增添一份乐趣.不仅提升了编码能力,还可以边学边玩,简直妙哉妙哉! 二.游戏逻辑 1.打印选择菜单(1.play.0.exit) 2.调用rand()函数生成随机数 3.设置随机数范围 4.猜数字 5.判断猜的大小 三.思维导图 四.游戏过程 五.代码分析 1.生成随机数的方法 仅仅使

  • Java编写猜数字小游戏

    本文实例讲述了java实现的简单猜数字游戏代码.分享给大家供大家参考. 以下是Java语言写的一个猜数字小游戏引用片段: import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; //主函数 public class calssOne { public static void main(String[] args) { //shit+Ctrl+o int result; //随机产生一个

随机推荐