首页 > 其他分享 >第五章 语句

第五章 语句

时间:2023-10-06 11:23:28浏览次数:35  
标签:语句 case default 标签 switch while 第五章

简单语句

  • 空语句
    如果在程序的某个地方,语法上需要一条语句,但是逻辑上不需要,此时应该使用空语句。
  • 复合语句(块)
    复合语句是指用花括号括起来的语句和声明的序列,复合语句也被称作块。一个块就是一个作用域。(语法上需要一条语句,逻辑上需要多条语句)

条件语句

if语句

condition不管是表达式还是变量,其类型都必须能转换成布尔类型。

  • 悬垂else
    普遍存在于既有if语句又有if else语句中的问题。C++中规定else与离它最近的尚未匹配的if匹配,从而消除了程序的二义性。

switch语句

switch语句提供了一条便利的途径使得我们能在若干固定选项中做出选择。

 char c;
    int acnt = 0, bcnt = 0;
    while(cin >> c)    //abcab
    {
        switch(c)
        {
            case 'a':
            ++ acnt;
            break;
            case 'b':
            ++ bcnt;
            break;
        }
    }
    cout << acnt << ' ' <<  bcnt << endl; // 2 2 

如果表达式和某个case标签的值匹配成功,程序从该标签之后的第一条语句开始执行,直到到达了switch的结尾或者遇到一条break语句为止。

 char c;
    int acnt = 0, bcnt = 0;
    while(cin >> c)    //abcab
    {
        switch(c)
        {
            case 'a':
            ++ acnt;
            case 'b':
            ++ bcnt;
            break;
        }
        cout << acnt << ' ' <<  bcnt << endl; 
        // 1 1
        // 1 2
        // 1 2
        // 2 3
        // 2 4
    }

case关键字和他对应的值一起被称为case 标签。case标签必须是整型常量表达式。
case 3.14就是错误的。
任何两个case 标签的值不能相同,否则就会引发错误。另外,default也是一种特殊的标签。

  • default 标签
    如果没有任何一个标签能匹配上switch 表达式的值,程序将执行紧跟在default 标签后面的语句。即使不准备再default标签下做任何工作,定义一个default标签也是有用的,目的在于告诉读者已经考虑到了默认的情况。

for,while, do while 语句

  • 范围for语句的定义来源于与之等价的传统的for语句。
    在范围for语句中,预存了end()的值。一旦在序列中添加或者删除元素,end函数的值就可能变得无效。

  • do while先执行语句或者块,后判断条件,所以不允许在条件部分定义变量。

do 
   statement
while(condition);

try语句块和异常处理

标签:语句,case,default,标签,switch,while,第五章
From: https://www.cnblogs.com/Ranr-/p/17743170.html

相关文章

  • 开源数据库Mysql_DBA运维实战 (DDL语句)
    DDLDDL语句数据库定义语言:数据库、表、视图、索引、存储过程.例如:CREATE DROPALTERDDL库定义库{CREAATEDATABASE  ___数据库名___ ;                数据库名要求{                                        a.......
  • 常用的SQL语句小结(三)---复杂查询,CASE表达式,各种连接查询
    1.复杂查询(1)普通子查询SELECTproduct_type,cnt_productFROM(SELECTProduct_type,COUNT(*)AScnt_productFROMProductGROUPBYproduct_type)ASProductSum;()里的是内层查询会首先执行,然后才会执行外层查询子查询可以多层嵌套,但是性能会下降,尽量少用多层子查询 (2)标量......
  • Ansible Lightspeed Ai自动化生成yml语句
    写作时间:2023/10/4操作环境:VscodeLinuxAnsibleLightspeed是什么AnsibleLightspeed是AI可以自动生成AnsiblePlaybook任务,红帽表示,这一新功能使Ansible新手用户更容易实现任务自动化,从而减轻了自动化专业人员创建低级任务的负担。用户可以使用英文命令生成AnsiblePlaybook......
  • try-with-resources语句
    try-with-resources语句try-with-resources语句是一种声明了一种或多种资源的try语句。资源是指在程序用完了之后必须要关闭的对象。try-with-resources语句保证了每个声明了的资源在语句结束的时候都会被关闭。任何实现了java.lang.AutoCloseable接口的对象,和实现了java.io.Clos......
  • 常用的SQL语句小结(二)---普通查询,注释,聚合,分组,复杂查询
    1.普通查询(1)查询所有列SELECT* FROMProduct;(2)查询部分列(跟(1)对比,相当于可以自己确定顺序)SELECTproduct_id,product_name,product_type,sale_price,purchase_price,regist_date FROMProduct;(3)查询时设置别名,英文和中文的区别英文案例:SELECTproduct_idASid,prod......
  • SQLite学习笔记——AND、OR运算符和UPDATE、DELETE语句
    运算符AND运算符带有WHERE字句的AND运算符语法如下SELECTcolumn1,column2,...columnNFROMtable_nameWHERE[condtion1]AND[condition2]...AND[conditionN];当满足AND连接的所有条件时,对应的列才会被选出来OR运算符带有WHERE子句的OR运算符语法如......
  • 常用的SQL语句小结
    只能使用半角英文字母、数字、下划线(_)作为数据库、表和列的名称  1.创建一张表CREATETABLE<表名>(<列名1><数据类型><该列所需约束>,<列名2><数据类型><该列所需约束>,<列名3><数据类型><该列所需约束>,<列名4><数据类型><该列所需约束>,<该表的约束1>,<该表的约束2......
  • SQLite学习笔记——创建数据库和SELECT,INSERT语句
    SQLite创建数据库我们可以直接使用sqlite3DatabaseName.db来创建数据库,这时候我们就会发现同一目录下出现了对应的.db文件或者我们可以先启动sqlite3然后在里面使用点命令.openDatabaseName.db来创建数据库,如果已经存在对应的数据库,那么我们默认就会打开该数据库。......
  • 用sql语句查询出表结构,在结果就能看到数据库所有表的结构,这个时候只要全选,然后右击出
    SELECT表名=CaseWhenA.colorder=1ThenD.nameElse''End,表说明=CaseWhenA.colorder=1Thenisnull(F.value,'')Else''End,字段序号=A.colorder,字段名=A.name,字段说明=isnull(G.[value],......
  • chat2db教程:根据对话内容生成SQL语句
    准备示例表--学生信息表droptableifexistsSTUDENT;CREATETABLEstudent(idINTPRIMARYKEYAUTO_INCREMENTCOMMENT'学生ID',nameVARCHAR(50)NOTNULLCOMMENT'学生姓名',genderVARCHAR(10)NOTNULLCOMMENT'学生性别',birthdayDATEN......