nba2k18ios免费版:miss姜网上课堂--QBASIC教程(四)——选择结构程序设计

来源:百度文库 编辑:偶看新闻 时间:2024/04/30 00:10:54

第四章 选择结构程序设计

一、概述
   分支结构:                                                 
二、关系式和逻辑表达式

  1、关系运算符                
     < 、 >、 =、 <=、 >=、 < > 
  2、关系式                
    关系式是由一个关系运算符把两个表达式连起来的式子。结果(值)为逻辑值:               
        真 True    假 False                     
   QBASIC用数值表示: 真: -1(非零值)                
             假: 0                     
 if x< >0 then print x和if x then print x 相同                                  
   3、逻辑运算符及逻辑表达式
  
   (1)、not (非、逆、取反)                            
      7>4 值为真                               
       not (7>4) 值为假               
   (2)、and (与、交)                

    所连接的两个关系式为真时条件成立。
       x>0 and x<10
    (3)、or (或 、并)                    

   所连接的两个关系式中有一个(以上)为真,则条件成立。                                             
     X> 10 or X<0                    

    集合表示 
      A and B    A or B     not A                                
  4、逻辑表达式的运算规则                                                    
  5、运算次序(优先级别)                     

    算术运算—关系运算—逻辑运算(例P123)                     

    关于逻辑表达式结果:                     

    x=6>4                     

    print x         x=-1                     

    a=5=3 =>a=(5=3)     a=0                     

三、行IF语句              
                   
  1、一般格式                   
    if <条件> then <语句1> [else<语句2>]                     

                      
  2、嵌套关系                                         
  (1)if…then if…then…else…else    
         内层                   
          外层                                  
 (2)if…then if…then…else if …then…else              

四、块if语句                    

   1、一般格式                   
     if <条件> then                    
       <语句组1>                    
     [else                 
       <语句组2>]                 
     end if                  

   2、应用举例

  例6.5: 输入3个整数、按从大到小的顺序输出。              
                   
  算法:                   
  (1)先将a与b比较,把小者放b中,大者放a。               
  (2)再将a与c比较,把小者放c中,大者放a中,此时 a 已是三者最大的。                    
  (3)最后将b与c比较,大者放b中,小者放c中,此时 a、b、c已按从大到小的顺序排例好。             
  程序:                    
       inpnt "a,b,c,=";a,b,c  
       if b>a then   
         t=a                    
         a=b    交换a、b(swap a,b) 
         b=t                    
       end if                
       if c>a then   
         t=a                    
         a=c   交换a、c(swap a,c) 
         c=t                    
       end if     
       if c>b then   
         t=b                    
         b=c   交换b、c (swap b,c)
                c=t    
                
       end if
         print a, b,c 
            end    
                
                
  3、块if的嵌套              

     if then                    
       …             
       if then
                      
       else                    
         …             
       end if                    
       …             
     else                    
       …             
     end if                                             
  
 
4、块IF中的ELSEIF格式

       if  then
         …            
       else                    
         if then
          …            
         else
          …            
         end if                    
       end if                     

写成:  if  then                    
      …            
     elseif then
      …            
     else                    
      …            
     end if                     

P125 改写为:                     

     Input "m=";m
     If m<100 then
       d=0                    
     elseif m<200 then
       d=0.01
     elseif m<300 then
       d=0.02
     elseif m<500 then
       d=0.03
     elseif m<1000 then
       d=0.04
     elseif m<2000 then
       d=0.05
     else                    
       d=0.08
     end if                    
     a=m*(1-d)                    
     print "amount=";a
     end                     

五、多分支选择语句                     

     用嵌套的IF语句可实现多分支选择               
  1、基本格式            

     select case <变量>
       case <值1>                    
         <语句组1>
       case <值2>                    
         <语句组2>
       …          
       case <值n>                    
         <语句组n>
       case else                    
         <语句组n+1>
     end select                     

  每一个CASE句中指定一个值条件,当CASE变量的值符合条件时,执行该子句下面的语名组,在执行完该语句组后,跳过其它CASE子句,从END SELECT转出。          

     c=int(s/250)          

  2、在CASE子句中使用TO           

     CASE <值1> TO <值2>         
      

  3、在CASE子句中使用IS         

     CASE IS <关系运算符> <表达式>        

  4、在CASE子句中使用多个条件         

   允许在一个CASE子句中指定多个条件,各条件   之间用逗号分开。        
     条件=单值、值范围、单条件       
     

  5、SELECT CASE语句的一般格式        

     select case <测试表达式>
       case <条件11>,<条件12>,…
         <语句组1>
       case <条件21>,<条件22>,…
         <语句组2>
       …           
       case <条件n1>,<条件n2>,…
         <语句组n>
       case else                    
         <语句组n+1>
     end select         

六、多分支转移语句       
         

  格式:ON <算术表达式> GOTO <标号1>,<标号2>,          
七、多分支选择结构小结        

  1、IF-THEN-ELSE(用IF的嵌套)       
    分支(条件)较少时使用。        
  2、SELECT CASE       
    分支(条件)较多时使用。       
  3、ON GOTO       
    非结构化程序设计,不宜使用。