热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【C语言疯狂讲义】(四)C语言分支语句

1、程序的结构程序默认从上到下顺序执行(顺序结构)程序的结构:顺序结构、分支结构、循环结构2、if分支语句程序执行的过程中

 1、程序的结构

 

    程序默认从上到下顺序执行(顺序结构)

   

    程序的结构:顺序结构、分支结构、循环结构

 

 2if分支语句

 

    程序执行的过程中可以有多个选择

    格式:

         if(表达式){

 

              语句块;

         }

 

         ......

 

     进行表达式的求值:如果表达式的值为非0(真)会执行语句块

                                  0 (假)不会执行语句块,

 

 3if分支语句的几种形式

 

    1)最简单的,要不执行,要不是不执行

 

     if(表达式){

     

     语句块;

 

     }

 

 

 

    2)if.....else......

 

     if(表达式){

 

        语句块1

 

     }else{

 

        语句块2

     }

 

     进行表达式的求值:如果表达式的值为(真)会执行语句块1

                               0 (假)会执行语句块2

 

     注意:语句块1和语句2只可能被执行一次

 

  

     3if...else...的嵌套问题

 

     if(表达式1){

 

         if(表达式2){    //表达式1值为1,并且表达式2值为1

 

             语句块1

 

         }else{

            语句块2    //表达式1值为1,但是表达式2的值为0

         }

 

     }else{

 

        语句块3        //表达式10的时候

 

     }

 

 

 

    4if..... else if ......else....

 

     if(表达式1){

 

        语句块1;  //表达式1为真

 

     }else if(表达式2){

       

        语句块2;  //当表达式1不成立,但是表达式2成立

 

     }else{

 

         语句块3 //当表达式1和表达式2都不成立的时候

     }

 

 4if注意点

 

    1if(1)if(-1)if(a=5) 永真式   if(0) 永假

    2if(表达式); 表示判断完了什么都不做

    3) if(表达式) return 0; //程序退出,代码不会再往下执行了

    4) if(表达式){int num=10;}  printf("%d",num);(错误的)

    5if(表达式) int num=10; (作用域紊乱)

 

 

 5switch分支语句

 

    也是用于条件判断,当表达是的结果有多种情况,用switch比较方便一些

 

    格式:

 

       switch(表达式){

 

          case 整型常量或者字符常量: 语句;

           .....

 

 

          default:

                //如果上面的条件都不满足,执行default

 

       }

 

 

      计算表达式的值,用这个值和case后的常量进行比较,如果这个值等于了某个常量值,会执行case对应的分支语句,遇到break;才结束,如果没有遇到break,程序一直会往下执行,直到switch语句结束

 

 6switch的注意点

  

    1switch(表达式)   表达式:返回值是整型

    2case 常量        常量:必须是整型的 ,不能是flaoat    cast 2.3:

                       可以放常量表达式,但是不允许:a+3

    3) 作用域的问题

 

       case 3: {

                 int num=-1;

             }

       case 4:printf("%d\n",num); 不允许的

 

    4case分之语句可以有多句,可以使用大括号,也可以不使用

    5)作用域紊乱的问题:  case 4:int a=4; (错误的)


推荐阅读
  • JAVA流程控制结构在java中有三种流程控制结构:顺序结构,选择结构,循环结构顺序结构:顺序结构,是指程序从 ... [详细]
  • C语言注释工具及快捷键,删除C语言注释工具的实现思路
    本文介绍了C语言中注释的两种方式以及注释的作用,提供了删除C语言注释的工具实现思路,并分享了C语言中注释的快捷键操作方法。 ... [详细]
  • day04_流程控制
    流程控制在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说,程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要 ... [详细]
  • 本文介绍了一个Java猜拳小游戏的代码,通过使用Scanner类获取用户输入的拳的数字,并随机生成计算机的拳,然后判断胜负。该游戏可以选择剪刀、石头、布三种拳,通过比较两者的拳来决定胜负。 ... [详细]
  • switch语句的一些用法及注意事项
    本文介绍了使用switch语句时的一些用法和注意事项,包括如何实现"fall through"、default语句的作用、在case语句中定义变量时可能出现的问题以及解决方法。同时也提到了C#严格控制switch分支不允许贯穿的规定。通过本文的介绍,读者可以更好地理解和使用switch语句。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 开发笔记:实验7的文件读写操作
    本文介绍了使用C++的ofstream和ifstream类进行文件读写操作的方法,包括创建文件、写入文件和读取文件的过程。同时还介绍了如何判断文件是否成功打开和关闭文件的方法。通过本文的学习,读者可以了解如何在C++中进行文件读写操作。 ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • Java SE从入门到放弃(三)的逻辑运算符详解
    本文详细介绍了Java SE中的逻辑运算符,包括逻辑运算符的操作和运算结果,以及与运算符的不同之处。通过代码演示,展示了逻辑运算符的使用方法和注意事项。文章以Java SE从入门到放弃(三)为背景,对逻辑运算符进行了深入的解析。 ... [详细]
  • 本文介绍了关系型数据库和NoSQL数据库的概念和特点,列举了主流的关系型数据库和NoSQL数据库,同时描述了它们在新闻、电商抢购信息和微博热点信息等场景中的应用。此外,还提供了MySQL配置文件的相关内容。 ... [详细]
  • 那你就是学的c语言,跟我学c语言
    本文目录一览:1、如何学习C语言?2、新手如何 ... [详细]
  • 分支结构程序设计练习
    任务1:从键盘输入三个整数,按从小到大排序输出。实现思路:定义三个整形变量x,y,z,分别存放从键盘输入的整数。比较x和y的值,如果xy,则x和y的值交换;比较x和z的值, ... [详细]
  • 本文介绍了如何按需加载elementui的部分模块,以及如何设置覆盖某些属性。通过import引入Dialog模块,并使用Vue.component进行全局设置。同时使用Vue.use引入ElementUI和VueAxios模块。通过extends进行属性覆盖设置。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
author-avatar
橘子火4
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有