C语言学习总结(第三章 顺序结构、第四章 选择结构)

第三章 顺序结构

  1. 定义:从main()开始,由上往下一条一条地执行

  2. 语句:

三大类语句→执行语句:5类
控制语句(9条)
函数调用语句;
表达式语句:
空语句;
复合语句{}

标准函数/库函数使用前必须:#include<头文件名>在包含的程序文件中
printf()
    格式1:printf(“格式控制”);
        功能:按格式控制指定的格式输出数据
        双引号是字符串标志,永远不输出

    格式2:printf(“普通/占位符”,输出列表的值);
        功能:按格式将值输出
        注意:
            “占位符”以%开始的,被替换
                (1)d       带符号十进制整数
                (2)u       无符号十进制整数
                (3)o       无符号的进制整数
                (4)X或x       无符号十六进制整数
                (5)c        输出一个字符,不输出单引号
                (6)s        输出一个字符串,输出时不输出双引号
                (7)f         输出一个实型数,隐含输出6位小数
                (8)E或e        输出指数形式的实型数

            “普通字符”将原样输出
            输出值,先计算后输出



scanf()
    格式:scanf(“普通/占位符”,地址列表);
    “普通/占位符”,输入时普通字符必须原样输入
    “%d”,输入时4种输入:空格、Tab、回车、前三个混合用
    “%c”,一旦连续出现,就要连续输入
    %d,%c一起出现时,连续输入
    地址列表,输入时&

字符数据的输入输出
putchar()
        格式:putchar(字符常量或字符变量)
        功能:输出一个字符但不输出单引号(类似于printf)
        输出
            如果是变量,就会输出该变量,如putchar(‘a’);   输出a
            如果是整型,就会输出改整型的ASCII码,如putchar(100);  输出d


getchar ()
        功能:接收一个从键盘输入的字符(类似于scanf)
        注:getchar()没有任何参数,函数的返回值就是输入的字符

第四章 选择结构

  1. 定义:从main()开始,由上往下有些语句执行有些不执行

  2. 语句:

两类语句→执行语句:控制语句
不标定义语句,直接标执行语句
找配对,找控制,标语句

1、两类表达式
    关系运算符及关系表达式  {结果是逻辑值,即不是0(假)就是1(真)}
        <   <=     >    >=    (6级,从左往右)
          = =     !=  (7级,从左往右)

    逻辑运算符与逻辑表达式{结果是逻辑值,即不是0(假)就是1(真)}
        && (11级(从左往右)   一假则假
            &&的短路:第一个操作数的逻辑值为0则直接输出结果为0(后续操作数不会再计算了)

        ||    (12级 ,从左往右)  一真则真
            ||的短路:第一个操作数的逻辑值为1则直接输出结果为1(后续操作数不会再计算了)

        !(单目)(2级,从右往左)  非真即假

    三要素:功能、优先级、结合性
        2级的都是单目,单目的都是从右往左
        3-12级都是双目,双目的都是从左往右

    表达式计算步骤
        先看表达式合不合法
        然后看有没有短路
        计算优先级高的,同级情况下再看结合性


2、if 语句(三种格式)
    格式1:if语句
    格式2:if else语句
        一个else都要和一个if配对
        如果 则if不加  {},那么只控制下面的第一句话;else不加  {},那么只控制下面的第一句话。
        如果if没有加 {},并且和else中间不止有一句话,那么程序就会报错:else无法找到与之匹配的if
        复合语句 {}算一条语句

    格式3:if的嵌套
        else总是在它上面、离它最近的、未与其他else配对的那个if配对
        形式一
        形式二:多选一
            if(条件) { 代码块 } else if(条件) { 代码块 } else { 代码块 }
                多选1
                不能随便加分号,不能将结构分离
                else跟同层的,上边最近的else if匹配
                嵌套
                对比多个if并列的写法




3、switch语句
    | default可有可无
    执行过程:表达式里的值和case后面的常量表达式的值进行匹配,如果匹配成功就会执行该case之后的子句以及该case下面所有的case的子句;若表达式里的值和case后面的常量表达式的值都不匹配,才会执行default后面的子句(没有的话直接跳出),若default下面还有case语句,则依然会执行 ;若default在最 上面,并不会先执行default的,还是依旧先寻找与表达式值相匹配的常量表达式的值,如果找不到,就会执行default语句,然后再执行下面所有的case语句(除非遇到break)
    switch后面的表达式必须是个值,要和下面case后的相互匹配
    switch后必须用小括号将表达式括起
    case后常量整型或字符型,不能有变量和逗号运算符
    各case后常量不能出现相同的值
    case和default 只是一个入口标号,不起中断作用。它们的顺序可以任意颠倒
    case 和default必须出现在switch语句中
    char类型数据输入的时候系统会自动给你加上''的,比如你输入a,系统识别为‘a’
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

墨辰ins

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值