%f -- float %lf -- double
%x(或者%X后者%#X) -- int或long int
或short int
%o -- int或long int或
short int
%s -- 字符串 为什么需要输出控制符
1. 01组成的代码可以表示数据也可以表示指令 2. 如果01组成的代码表示的事数据的话,那么同样的01代码组合一不同的输出格式输出就会有不同的输出结果
Scanf ( ) [通过键盘将数据输入到变量中] 两种用法:
1. Scanf(“输入控制符”,输入参数);
例如:scanf(“%d”, &i) //&i表示取i地址,&为取地址符
功能: 将从键盘输入的字符转化为输入控制符所规定的格式的数据,然后存入以输入参数的值为地址的变量中
2. Scanf(“非输入控制符 输入控制符”,输入参数);
功能: 将从键盘输入的字符转化为输入控制符所规定的格式的数据,然后存入以输入参数的值为地址的变量中
非输入控制符必须原样输入
如何使用scanf编写出高质量代码
1. 使用scanf之前最好先用printf提示用户以什么样的方式输入
2. Scanf中尽量不要使用非输入控制符,尤其是不要用\\n 3. 应该编写代码对用户的非法输入做适当的处理【非重点】 While ( (ch=getchar()) !=‘\\n’) Continue; 16) 运算符 算术运算符
+ - * /(除) %(取余数) 关系运算符
﹥ >= < !=(不等于) ==(等于) 逻辑运算符
!(非) &&(并且) ||(或) !真 假 !假 真
真&&真 真
真&&假 假 假&&真 假 假&&假 假
真||真 真 真||假 真 假||真 真 假||假 假
C语言对真假的处理 非零时真 零是假 真是用1表示 假是用0表示
&&左边的表达式是假时 ,右边的表达式不执行 ||左边的表达式是真时 ,右边的表达式不执行
赋值运算符
= += -= *= /= 优先级别
算术 > 关系 > 逻辑 > 赋值 附录的一些琐碎的运算符知识
自增 自减 三目运算符 逗号表达式 除法与取余运算符
1. 除法(/)的运算结果与运算对象的数据类型有关,两个数都是int型,则商就是int型,若商有小数,则截取小数部分;被除数和除数中只要有一个或两个都是浮点型数据,则商也是浮点型,不截取小数部分。
如:16 / 5== 3 16 / 5.0 ==3.20000 -13 / 4 ==-4
-13 / -3 ==4 3 /5 ==0 5 /3 ==1
最经典的例题就是求S=1+1/2+1/3+1/4+1/5……+1/100的值(具体的程序以后再讲)。
2. 取余%的运算符对象必须是整数,结果是整除后的余数,其余数的符号与被除数相同
如:13 % 3==1 13% -3==1 -13 %3 ==-1
-13#==-13 -13%-23 ==-13 3%5 ==3
17) 流程控制【是我们学习C语言的第一个重点】 1. 什么是流程控制 程序代码的执行顺序 2. 流程控制的分类 a) 顺序执行 b) 选择执行
定义:某些代码可能执行,也可能不执行,有选择的执行某些代码
分类: if
(1) If最简单的用法 格式:
If (表达式) 语句
功能: 如果表达式为真,执行语句 如果表达式为假,语句不执行 (2) If的范围问题 【重点】 1. If(表达式) 语句A; 语句B;
解释:if默认只能控制语句A的执行或不执行 If无法控制语句B 的执行或不执行 或者讲:语句B一定会执行 2. If(表达式) {
语句A; 语句B; }
此时if可以控制语句A和语句B
由此可见:if默认只能控制一个语句的执行或不执行,