"练习
int main()
{
int num = 5;
/*
(num++)是5,num是6 (++num)是7,num是7 (++num)是8 num是8 (num--)是8,num是7
*/
int result = num++ + ++num + ++num - num--;
printf("%d\n",result);
return 0;
}
#pragma mark - 0_17 详解各类比较运算符[掌握]
"强调
1.结果
比较表达式的结果是0或者1,0表示不成立1表示成立
2,易错点
判断两个数据是否相等 是两个等号(等等于). 1个等号叫赋值(经常会有学生搞不清楚)
int m = 5;
if(6 == m )
{
....
}
#pragma mark - 0_18 比较运算表达式的场景 [掌握]
"例子
1>判断一个数是不是5的倍数
(数%5 == 0) ----> 结果有两种可能 0表示数不是5的倍数 1是表示数是5的倍数
2>实现
int main()
{
//定义一个数用于接受用户输入,拿这个数来操作
int caoZouShu = 0;
scanf("%d",&caoZouShu);
//对5取余数,如果结果 == 0 说明是5的倍数,反之就不是5的倍数
printf("%d\n",caoZouShu%5==0);
return 0;
}
char类型的变量或者常量也可以参与比较运算符,比较的是相应的ASCII码
"例子:
让用户输入两个同大写同小写的且不相同的英文字母,比较这两个字母谁排名在前面
int main()
{
char char_1,char_2;
scanf("%c,%c",&char_1,char_2);
int result = char_1<char_2;//如果是0表示char_2在前面
}
int main()
{
int num = 1;
int i =1;
int result = num||i++;
printf("i==%d--result==%d\n",i,result);//1,1
return 0;
}
2.当逻辑&&和逻辑||组合运算时,仍然是放弃优先级,从左向右扫描
如果有短路,后面的就不执行,如果没有短路,那么就按照正常的优先级来计算
1>
int main()
{
int i = 1;
int result = 1||i++&&i;
printf("%d\n",result);//1
printf("%d\n",i);//1
return 0;
}
2>
int main()
{
int i = 0;
int result = 0||i++&&i;
printf("%d\n",result);//0
printf("%d\n",i);//1
return 0;
}
3>
int main()
{
int i = 0;
int result = 0||i++&&i++;//
printf("%d\n",result);//0
printf("%d\n",i);//1
return 0;
}
#pragma mark - 06_2 练习讲解 [掌握]
请用户输入他的儿子的语数外三门课的成绩,如果平均分>=60,给他一个吻.
#pragma mark - 07 使用IF结构注意[掌握]
1.空语句: 一个;表示一个空语句,什么都不做,但是是符合C语言语法规则的
int main()
{
;
return 0;
}
2.if结构中if后面的()后面不要加;如果你加了,就认为你满足条件执行依据空语句
int main()
{
int num = 11;
if(num > 10);//这里添加分号,if管控的代码块就只有一个空语句
{
printf("真的大于10!\n");
}
return 0;
}
//等价于
int main()
{
int num = 11;
if(num > 10)
{
;
}
{
printf("真的大于10!\n");