C语言易错点重点内容的部分小结

张开发
2026/4/15 0:58:36 15 分钟阅读

分享文章

C语言易错点重点内容的部分小结
1.赋值忽略符例子#includestdio.hint main(){int year 0;int month 0;int day 0;scanf(%d-%d-%d, year, month, day);printf(%d %d %d\n, year, month, day);return 0;}上面实例中如果用户输入2026-4-12就会正确解读出年月日但是用户有可能输入其他格式那么会导致scanf()解读数据失败。为了避免这种情况scanf()提供了一个赋值忽略符*只要把*加在任何占位符的百分号后面该占位符就不会返回值解析后将被丢弃。用法举例#includestdio.hint main(){int year 0;int month 0;int day 0;scanf(%d%*c%d%*c%d, year, month, day);printf(%d %d %d\n, year, month, day);return 0;}2.if语句1多分支if表达式语句1else语句2如果表达式为真则输出语句1否则输出语句2。好习惯变量创建的时候给一个初始值。2分支中包含多条语句,必须给多条语句加上{ }例子#includestdio.hint main(){int a 0;scanf(%d, a);if (a 18){printf(成年了\n);printf(可以谈恋爱了\n);}else if (a 18)printf(成年了\n);else{printf(未成年\n);printf(不能谈恋爱\n);}return 0;}3.else悬空问题如果有多个if和else则else总是和他最近的if匹配但是加上{ }可以解决优先问题。4.多个运算符不宜连用。可以用来连接。例子akm(错误写法akkm(正确写法5.例子ifa5)b3;elseb-3;等价于b(a5?3:-3);例子max(ab?a:b),用来比较出a和b中的较大值。三目操作符6.:逻辑取反操作符逻辑与||逻辑或7.短路C语言逻辑运算符还有一个特点他总是先对左侧的表达式求值这个顺序是一定的。如果左边的表达式满足逻辑运算符的条件就不再对右边的表达式求值这种情况成为短路。8.switch语句注意1case和后边的数字之间必须有空格2每一个case语句中的代码执行完成后需要加上break才能跳出这个switch语句。举例#includestdio.hint main(){int a 0;scanf(%d, a);switch (a % 3){case 0:printf(余数是0\n);break;case 1:printf(余数是1\n);break;case 2:printf(余数是2\n);break;}return 0;}

更多文章