scanf 函数 (格式化输入函数)
占位符
整型
%d 转换为 有符号 十进制 形式 //表示将数据转换为 对应格式 存放到内存中
%u 转换为 无符号 十进制 形式
%x 转换为 十六进制 形式
%X 十六进制中的 字母 转换为大写形式
%o 转换为 八进制 形式
浮点
%f 转换为 小数形式输出 默认保留6位小数
%lf double 数据
%e 转换为 科学计数法形式
%E 输出结果中的e输出为大写
%g 转换为 更简洁的一种方式输出
不会输出多余的0
字符
%c 转换为 字符形式 输出
%s 转换为 字符串形式 输出
注意
1. scanf输入多个数据时,
默认以空白符 作为分隔符
空白符(空格,回车,tab)
2. scanf最后不要出现 \n
空白符
如果scanf中出现 空白符 作用 表示 匹配任意多个空白符
3. scanf 读取数据过程 及 读取结束的条件
4.scanf使用时,地址列表,必须要有 (特别注意,需要地址)
5.地址列表 和 占位符 做到一一对应
6.scanf占位符 要求做到精确匹配
7. %c 作用 将键盘读到的数据转换为字符 ,即ACSLL码
键盘输入的任何东西,本质都是字符
空格 回车 tab 为空白符
8.辅助控制符
%lf
%ld 表示long int
%lld 表示long long int
%3d 表示读取3个数据的宽度
%.2f 输入时,不能指定输入精度
if 语句
单分支语句
语法:
......
if (表达式)
{
语句;
}
......
语义:
求解 表达式 ?
如果 表达式 为真
则执行 语句
如果 表达式 为假
则 if 语句结束
程序 继续执行 if 后面语句
双分支语句
语法:
if (表达式)
{
语句1;
}else
{
语句2;
}
语义:
首先,求解 表达式
如果 表达式 为真
则执行 语句1
如果 表达式 为假 //else
则执行 语句2
if执行结束,程序继续往下执行代码
多分支语句
语法:
if (表达式1) //注: 不能有分号
{
语句1;
}else if (表达式2) //注: if不能丢了 ,也不能有分号
{
语句2;
}else ...
{
}
语义:
首先 求解 表达式1
如果 为真 执行 语句1
如果 为假 判断 表达式2
如果 为真 执行语句2
如果 为假 判断 表达式3
.....
if 语句结束,程序继续往下执行