1. 看程序写答案
1.printf("%d,",c);
注意" "
内是否有逗号
2.判断浮点型是否相等时有精度限制
float f=0.1;
if(f==0.1)a=1;
else a=0;
printf("%d",a);
Output:0
比较需要使用abs(a-b)<0.000001
另:浮点型可以直接比较大小
3.a==(b+c)
a>b+c
判断语句的返回值为0或1
4.a&&b||c
&&
若左为零则不执行右
||
若左为1则不执行右
!=
无赋值功能
5.a?b:c
三目运算符
等价于if(a)b;else c;
6.
int x=1,y=0;
if(!x)y++;
else if(x==0)
if(x)y+=2;
else y+=3;
printf("%d",y);
Output:0
注意观察if else
位置,最好错位排列一下
7.数组初始化从a[0]
开始
8.printf()
输出%f
和%lf
格式时默认保留六位小数9.
9.f*=a+b
先执行a+b
再执行,自乘操作
10.
switch(x)
{
case 1:do a;break;
case 2:do b;
default: do c;continue;
}
break
终止switch
执行,不执行之后语句
continue
用于结束本次循环,无法终止switch
若switch
在for
循环内,跳一次for
循环
11.关系运算符可以用于整型、浮点型、字符型或混合类型。关系运算符的优先级低于算术运算符,且是左结合的。因此i<j<k
的意义与数学表达式中的意义不同,而是等价于(i<j)<k
,先计算i<j
的值是0
或1
,再拿0
或1
与k
比较。
12.if(a)
是逻辑判断语句,如果括号内逻辑值为真,则继续执行下一条语句,否则不执行
计算机默认以“0”
代表逻辑假,以“非0值”
代表逻辑真
勿将负数潜意识当假
2.改错题易错点
1.头文件是否缺少
-----根据题目使用函数添加
2.变量是否定义
定义类型是否有错误
3.for()
与while()
是否需要后加;
4.判断相等为==
单个=
错误
5.注意字符量'0'
与0
区别
6.int
定义主函数末尾是否有return 0;
而void
定义主函数不需要返回值,不加return 0;
7.题目定义过的变量,出题者可能会写错
8.for(;;)
的;
与scanf("",)
的,""
是否写错
9.输入带空格的字符串时用gets()
而不用scanf("%s");