zoukankan      html  css  js  c++  java
  • T-Sql编程基础

    T-sql编程 入门小游戏

    T-sql编程基础,包括声明变量,if判断,while循环,以及使用一些基本函数.

    记得在学校的时候,写过一个二人对打的文字输出游戏.

    上代码

    alter proc usp_paly
    as
    
    declare @paly1 nvarchar(20),@paly2 nvarchar(20)
    declare @atk1 int,@atk2 int
    declare @hp1 int,@hp2 int
    
    set @paly1 ='神秘阿会喃'
    set @paly2 ='吕布'
    set @hp1 = 1000;
    set @hp2 = 1000;
    
    declare @rand int,@times int;
    set @times = 0;
    set @rand = 0;
     while @hp1 > 0 And @hp2> 0
       begin
         set @times = @times+1;
         print ''+ cast(@times as varchar(10))+'回合'
          set @rand = RAND()*100;  --100以内随机数,每一回合都要比看谁先出手
          --双方攻击力,每次都随机
          set @atk1 = cast(RAND() * 100 as int)+10; --攻击力 10到 110
          set @atk2 = cast(RAND() * 40 as int)+40;  --攻击力 40到80
          if @rand>50
            begin
              --回合制,一人打一回合,玩家1攻击玩家2
              set @hp2 = @hp2 -@atk1;
              print @paly1 +' 攻击 '+@paly2+' , '+@paly2+' 损伤 '+cast(@atk1 as varchar(10))
              --判断 @paly2 是不是挂了
              if @hp2<=0
               begin
                  print @paly1 +'胜利!'
                  BREAK;
               end    
              
              --没死就玩家2攻击玩家2
              set @hp1 = @hp1 -@atk2;
              print @paly2 +' 攻击 '+@paly1+' , '+@paly1+' 损伤 '+cast(@atk2 as varchar(10))
              --判断 @paly2 是不是挂了
              if @hp1<=0
               begin
                  print @paly2 +'胜利!'
                  BREAK;
               end    
            end
           else
            begin
            
                  --没死就玩家2攻击玩家1
                  set @hp1 = @hp1 -@atk2;
                  print @paly2 +' 攻击 '+@paly1+' , '+@paly1+' 损伤 '+cast(@atk2 as varchar(10))
                  --判断 @paly2 是不是挂了
                  if @hp1<=0
                   begin
                      print @paly2 +'胜利!'
                      BREAK;
                   end    
                   
                  --回合制,一人打一回合,玩家1攻击玩家2
                  set @hp2 = @hp2 -@atk1;
                  print @paly1 +' 攻击 '+@paly2+' , '+@paly2+' 损伤 '+cast(@atk1 as varchar(10))
                  --判断 @paly2 是不是挂了
                  if @hp2<=0
                   begin
                      print @paly1 +'胜利!'
                      BREAK;
                   end    
             end
             print '-----------------------------------------'
       end
     go
      

    运行效果一览

    Nice!

  • 相关阅读:
    struts2 s:if 的字符串比较问题
    struts2 标签
    servlet filter
    div滚动与控制
    页面定位
    linux下编译利用CMakeLists.txt 编译C++写的opencv程序
    yolo image.c
    强制杀进程
    PDB GDB 调试代码
    YOLOv3的Darknet在OpenCV3.4.1(bug)下编译出错填坑
  • 原文地址:https://www.cnblogs.com/mjxxsc/p/4618473.html
Copyright © 2011-2022 走看看