C语言的结构

一、选择结构

1.if ...else

if(表达式)
{
    代码块;
}

    如果表达式为真, 执行代码块;
              假, 不执行。
        
注意:如果没有花括号,if控制往下第一条
        
        
if(表达式)
{
   代码块1;  
}
else
{
    代码块2;   
}
        
    如果表达式为真, 执行代码块1;
              假, 执行代码块2。
        
        
if(表达式1)
{
  代码块1;  
}
else if(表达式2)
{
  代码块2;  
}
else if(表达式3)
{
   代码块3; 
}
....
else
{
  代码块n;  
}

    先判断表达式1, 为真: 执行代码块1
                  为假: 判断表达式2
    ....
        
   如果前面的表达式都不成立, 执行代码块n 

eg:

     闰年   (1)能被4整除,但不能被100整除
                (2)能被400整除
  终端输入年份,判断是否为闰年  
    
    int year;

    printf("input a year:");
    scanf("%d", &year);


    if( (year % 4 == 0 && year % 100 != 0) ||  (year % 400 == 0) )
    {   
        printf("闰年\n");
    }   
    else
    {   
        printf("不是闰年\n");
    }      

2、switch   case

switch(表达式)
{
    case 常量表达式1:
        代码块1;
        break;
    case 常量表达式2:
        代码块2;
        break;
    case 常量表达式3:
        代码块3;
        break;
    case 常量表达式4:
        代码块4;
        break;
            
   .....         
            
   default : 
        代码块n;                
}

eg:

        终端输入成绩  int score;    [0, 100]有效成绩
    
             (1)无效成绩打印 "error"
             (2)有效成绩判断等级:    
                      [90, 100]   ---- A
                      [80, 90)    ---- B    
                      [60, 80)    ---- D
                      [0, 60)     ---- not pass  
                       
                       
    int score;
    printf("input a score:");
    scanf("%d", &score);

    if( 0 <= score  &&  score <= 100 )
    {   
        //int a = score / 10;
        switch(score / 10) 
        {
            case 10:    printf("A\n");   break;
            case 9:     printf("A\n");   break;
            case 8:     printf("B\n");   break;
            case 7:     printf("D\n");   break;
            case 6:     printf("D\n");   break;
            default:    printf("not pass\n");  break;    
        }
    }
    else
    {   
        printf("error\n");
    }  

                   

  • 23
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值