zoukankan      html  css  js  c++  java
  • 003-scanf函数使用和表达式-C语言笔记

    003-scanf函数使用和表达式-C语言笔记

    学习目标

    1.【掌握】输入函数scanf的基本使用方法

    2.【掌握】输入函数scanf运行原理和缓冲区理解

    3.【掌握】算术运算符和算术表达式的使用

    4.【了解】数据类型自动转换和强制转换

    5.【掌握】赋值运算符和复合赋值运算符

    6.【掌握】自增自减运算符的使用注意

    7.【掌握】逗号表达式

    一、输入函数scanf的基本使用方法

    scanf函数的声明在标准输入输出头文件“stdio.h”中,这个函数用于接受键盘输入的内容。

    语法:scanf("格式控制字符串",输入项地址列表);

    格式控制字符串:规定数据输入的格式,由格式控制符和普通字符组成,格式控制符和百分号(%)一起使用,用来说明输入数据的数据类型(格式字符)。

    输入项地址列表:需要接收数据的变量地址,这些输入项与格式控制字符串在类型和数量上要对应,当有多个输入项时,各个地址名之间以逗号“,”分隔。输入格式和变量类型要保持一致。

    在C语言中,变量的地址可以通过地址运算符 & 得到

    常见的scanf格式控制符

    QQ20150625-2

     

    二、输入函数scanf运行原理和缓冲区理解

    使用scanf函数并不是直接将用户输入的数据赋值给变量,而且先将用户输入的数据全部存到缓冲区,注意任何字符都会存到缓冲区(包括回车),然后才给依次给变量赋值。如果缓冲区的数据不为空,调用scanf函数会直接从缓冲区中获取数据,而不会要求用户输入。

    解决办法:

     

    三、算术运算符和算术表达式的使用

    QQ20150625-7

    算术表达式就是算术运算符连接起来的式子,C语言里的表达式的结果不处理也不会报错,只是会警告提示表达式结果未被使用。

    求余运算中,如果两个数中有负数,余数的正负取决于第一个数的正负

     

    四、数据类型自动转换和强制转换

    类型转换分为:隐式数据类型转换显式数据类型转换

    隐式转换:

    显式转换:

    将大范围的数据赋值给小范围变量时,系统会自动做一个强制类型转换的操作,这样容易丢失精度。

     

    五、赋值运算符和复合赋值运算符

    赋值运算符:赋值运算符标记为“=”,这个不是等于哈,是将赋值运算符右边的表达式的值赋值给左边的变量。赋值运算符都是从右向左赋值。

    复合赋值运算符:在赋值运算符 “=” 前加上其它二目运算符可构成复合赋值运算符。

     

    六、自增自减运算符的使用注意

    在程序设计中,经常遇到“i = i + 1”和“i = i - 1”这两种极为常用的操作。C语言为这种操作提供了两个更为简洁的运算符,即++和--,分别叫做自增运算符自减运算符。它们是单目运算符,是从右向左结合的算术运算符。

    前缀表达式

    先完成变量的自增自减1运算,再用x的值作为表达式的值即“先变后用”,也就是变量先进行自增自减运算,再将变量参与运算。

    后缀表达式

    先用x的当前值作为表达式的值,再进行自增自减1运算。即“先用后变”,也就是将变量参与运算,然后才对变量进行自增自减运算。

     

    七、逗号表达式

    在C语言中逗号“,”也是一种运算符,称为逗号运算符。其功能是把多个表达式连接起来组成一个表达式,称为逗号表达式。逗号表达式的值就是从左到右计算各个表达式,取最后一个表达式的值为逗号表达式的值。

    如果你光看了这个实例,认为逗号表达式的值就是只看最后一个表达式,那就大错特错了。

  • 相关阅读:
    利用快慢指针快速得到链表中间节点
    idea编译golang插件总结
    Jquery复习(二)之stop()易忘点
    Jquery复习(一)之animate()易忘点
    doT学习(三)之实战
    doT学习(二)之用法集合
    doT学习(一)之语法
    npm学习(十二)之高级用法
    npm学习(十一)之package-lock.json
    npm学习(十)之如何使用创建、发布、使用作用域包
  • 原文地址:https://www.cnblogs.com/luolianxi/p/4990221.html
Copyright © 2011-2022 走看看