声明:本篇文章只是个人知识盲区、知识弱点、重点部分的归纳总结,望各位大佬不喜勿喷。梳理顺序是按照书籍的实际顺序梳理,转载请注明出处。
作者:sumjess
目前内容:第三四五章总结
1、数据输出
(1)格式字符
(2)修饰符
(3)注意事项:
① printf有返回值,返回值是本次调用输出字符的个数,包括回车等控制符;
② 尽量不要在输出语句中改变输出变量的值,因为可能会造成输出结果的不确定性。
eg:int k=8; printf("%d,%d\n",k,++k); 输出结果不是8,9,而是9,9.这是因为调用函数printf时,其参数是从右至 左进行处理的,先计算++k。
③ printf(“%*.*d“,m,n,f);将按照m和n规定的域宽输出浮点型变量f的值,而不是输出m、n的值。
2、数据输入:
(1)格式字符
(2)注意事项:
① 在scanf函数的格式字符前可以加入一个正整数指定输入数据所占的宽度,但不可以对实数指定小数位宽度;
② scanf函数有返回值,其值就是本次scanf调用正确的输入数据项的个数;
若同时读取多个值,在执行程序输入时,可用空格或\0断开;
④ 可在%和格式字符之间加上*号,作用是跳过对应的输入数据;
3、关系运算和逻辑运算:
(1)C语言6种关系运算符:>、<、==、>=、<=、!= ,前四个优先级大于后两个;
(2)算数优先级高于关系运算符高于赋值运算符;
(3)&&逻辑与,||逻辑或,!逻辑非;
(4)1(真)、0(假);
(5)与或逻辑表达式的值,八字口诀:一真或真,一假与假;
4、条件表达式构成的选择结构:
表达式1 ? 表达式2 : 表达式3
若表达式1?成立,则输出表达式2,否则为表达式3.
注意:条件运算符优先于赋值运算符,但低于关系运算符和算术运算符。
5、switch语句以及用switch语句和break语句构成的选择结构:
图示解释加不加break的区别:
6、语句标号和goto语句:
7、break和continue的区别详解
break和continue区别简介