【黑马程序员】C语言分支

原创 2015年11月17日 16:14:17


------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------


程序的结构及分类


1.程序的结构有三种


1)顺序结构

2)分支结构:if   switch

3)循环结构:while  do-while  for


2.if语句介绍及基本格式


1.分支语句if的使用

一般形式(第一种形式):表示如果表达式为真,执行语句块1否则不执行

<span style="font-size:14px;">//  if语句介绍:猜数字游戏:如果输入是5打印恭喜你,否则打印很可惜
//
//  Created by Brisinga on 15/11/14.
//  Copyright © 2015年 yan. All rights reserved.
//

#include <stdio.h>

int main(int argc, const char * argv[]) {
    int input=-1;
    printf("请输入一个数字\n");
    scanf("%d",&input);
    if (input<=9&&input>=0) {  //判断输入是否合法
        if (input==5) {
            printf("恭喜你!\n");
        }else{
        
            printf("很可惜\n");
        }
    }else{
    
        printf("非法的输入\n");
    }
    return 0;
}
</span>

3、if….else…语句及嵌套


1.if..else语句使用

如果表达式为真,则执行语句块1,否则执行语句块2

if(表达式)

{语句块1

}else{

语句块2

}


4、if语句的高级用法

if(表达式1)
{
语句块1
}else if(表达式2){ 语句块2 

}else if(表达式3){ 语句块3
}else{ 

语句块4 } 


<span style="font-size:14px;">//
//输入一个属于0-100的成绩,按0-59(E),60-69(D),70-79(C),80-89(B),90-100(A)分成几等。
//  main.c
//  if语句的高级用法
//
//  Created by Brisinga on 15/11/14.
//  Copyright © 2015年 yan. All rights reserved.
//

#include <stdio.h>

int main(int argc, const char * argv[]) {
    
    int score = -1;
    printf("请输入一个成绩\n");
    scanf("%d",&score);   //接收用户的输入
    if (score>=0&&score<=100) { //判断属于哪个等级
        if (score<=59) {
            printf("E\n");
        }else if (score<=69){
            printf("D\n");
        }else if (score<=79){
            printf("C\n");
        }else if(score<=89){
            printf("B\n");
        }else{
            printf("A\n");
        }
    }else{
        printf("非法的输入\n");
    }
    return 0;
}
</span>

5.剪刀石头布游戏实现


分析:制定游戏的规则

剪刀  干掉 

石头干掉 剪刀

布     干掉石头


思路:

计算机随机出一个拳

玩家自己选择一个拳

判断胜负


<span style="font-size:14px;">//
//  main.c
//  剪刀石头布游戏
//
//  Created by Brisinga on 15/11/14.
//  Copyright © 2015年 yan. All rights reserved.
//

#include <stdio.h>
#include <stdlib.h>
int main(int argc, const char * argv[]) {
    int player=-1,computer=-1;  //定义电脑,人员
    computer = arc4random_uniform(3);   //电脑随机产生0-2之间的整数
    printf("请输入剪刀石头布,注意:0剪刀,1石头,2布\n");
    scanf("%d",&player);
    if (player<0||player>2) {    //判断输入是否合法
        printf("非法的输入\n");
    }else{
    
        if (player==0&&computer==2) {
            printf("用户获胜\n");    //用户获胜
        }else if(player==1&&computer==0){
            printf("用户获胜\n");    //用户获胜
        }else if (player==2&&computer==1){
            printf("用户获胜\n");    //用户获胜
        }else if(player==computer){
        
            printf("平局\n");
        }else{
        
            printf("计算机获胜\n");      //其他情况,计算机获胜
        }
    
    }
    
    
    return 0;
}
</span>

6、switch语句基本格式


1.switch分置于句


1)使用格式

switch(表达式){

case 常量表达式1:语句1

case 常量表达式2:语句2

case 常量表达式3:语句3

case 常量表达式n:语句n


default:语句n+1


}


2.case语句的穿透问题

某个case语句执行完成后,并没有结束,而是向下执行其他case语句。


3.switch条件类型

1)表达式的类型(case语句后的值)必须是整形或者可以转换成整形的值(byte,short,char,int)


*注意:case语句之后,默认的第一句话不能定义变量,如果第一句话非要定义,应该加上{}


应用:从键盘输入一个月份,输出对应季节  12~2冬季  3~5春季  6~8夏季  9~11秋季


<span style="font-size:14px;">//
//  main.c
//  判断季节
//
//  Created by Brisinga on 15/11/14.
//  Copyright © 2015年 yan. All rights reserved.
//

#include <stdio.h>

int main(int argc, const char * argv[]) {
    int month;//定义用户输入的数字
    printf("请输入一个月份\n");
    scanf("%d",&month);  //接收一个月份
    switch (month) {
        case 12:
        case 1:
        case 2:
            printf("冬季\n");         //穿透冬季
            break;
        case 3:
        case 4:
        case 5:
            printf("春季\n");
            break;
        case 6:
        case 7:
        case 8:
            printf("夏季\n");
            break;
        case 9:
        case 10:
        case 11:
            printf("秋季\n");
            break;
        default:
            printf("非法的输入!\n");     //其他情况为非法的输入
            break;
    }
    return 0;
}
</span>



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

黑马程序员---C语言学习笔记之分支结构if语句与switc语句的详解

程序的结构及分类

黑马程序员—IOS之C语言基础—循环结构与分支结构

——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——- 第一章 循环结构 循环结构是指在一定的条件下重复执行某一个代码段。构成循环...

黑马程序员 - C语言 -分支、循环

——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-一.结构类型(1)顺序结构:程序按书写顺序进行读取编译。(2)选择结构:程序根据所给条件,判断真假,从而在真假两种...

黑马程序员——c语言基础:运算符和分支结构的一些注意点和练习

1.sizeof运算符 sizeof运算符是一个单目运算符 不是函数!  作用:计算常量、变量、数据类型 在内存中占用的字节数  1)用sizeof计算常量在内存中占用的字节数     si...

黑马程序员——C语言基础学习(二)---分支结构和循环结构

分支结构总结 循环结构总结

黑马程序员——C语言基础---分支结构

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------                   第一讲    if语句介绍及基本格式 1、if语句实现分支控...

黑马程序员----C语言学习笔记之学习总结《通讯录》程序实现

《通讯录》功能展示 跟着视频自学了一个星期C语言,今天终于搞定了,花了四个小时终于把这个小程序搞定了,也许还有很多bug,不过目前重大bug都搞定了,希望大家多多指出我的错误,或者不合适的地方,共同...

黑马程序员之--C语言学习笔记之变量、常量和注释

C语言数据类型

黑马程序员----C语言学习笔记之运算符2

运算符简要介绍和用法
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【黑马程序员】C语言分支
举报原因:
原因补充:

(最多只允许输入30个字)