C语言编程注意事项
最近解答了好多疑问,对大家的期末考试十分堪忧啊
答应我,下面这些错误不要再犯了好吗。
#一些小的知识点
- 数组定义时必须指定固定常数的长度,不能使用变量。
1
2
3
4
5
6// 错误示例
int n=10;
int a[n];
// 正确示例
int a[10];
#变量在使用前,一定要初始化
变量在使用前,一定要初始化!
变量在使用前,一定要初始化!
变量在使用前,一定要初始化!
举个 🌰:
1 | min = 10000; |
上面是一个很简单的求 a[i][*]
中最小值的方法,但是 min
在一轮循环后 未被初始化为0
,这样就会导致后面的所有 min
错误,正确的写法如下:
1 | for (i = 0; i < 5; i++) |
还有一个很容易被人忽视的点,再举个例子,我想得到数组最小的值及其所在的位置:
1 | int min,index; |
这种错误很隐蔽,因为只有当碰巧 a[i][0]
最小的时候才会出错,因为 index
没被初始化为 0
。
这种同时带了多个值的情况,所有的值都要初始化,很容易漏掉,需要注意。
1 | int min,index; |
#书写格式要规范
#合理使用tab缩进
虽然C语言是写给机器的语言,不论你写的多乱机器都能识别,但当你程序出现错误要查错的时候,良好的缩进习惯可以帮你快速地阅读代码。
1 | for(j=0;j<5;j++){float avr; |
1 | for (j = 0; j < 5; j++) |
#合理使用花括号{}
在C语言里 for
while
等循环可以接单个语句达到循环的作用,如下段代码所示:
1 | for (i = 0; i < 5; i++) |
假如我们需要在循环里做些别的事情,比如我突然要记录 i
的值,惯性思维的改法如下:
1 | for (i = 0; i < 5; i++) |
乍一看没有任何问题,但实际上这个 i
的值固定为 5
。
所以一定要合理使用 {}
,不要因为这种错误平白浪费时间。
1 | for (i = 0; i < 5; i++) |