宜昌一中信息组吧 关注:3贴子:64
  • 0回复贴,共1

程序错误检查经验谈

只看楼主收藏回复

程序错误检查经验谈

by stein.13

编了许多的程序了,也在许多方面栽过跟头,特地在明天考试前告诉大家找错的方法。
如果一个程序出现问题而无法解决,请按以下方式分析:

1.先确认头文件打对了(如stdio.h),还有其他的基本东西是否打对了,被使用的函数包含的头文件一定要打。

2.注意关键字是否打对了,如常错的(continue、unsigned等)有时候连main都可能打错

3.程序中使用的变量是否已经定义过,或者使用的变量名字是否和定义的一致。

4.变量的类型和初值是否正确,请正确分析题目所需的数据大小和类型,该用long int的时候就用它,不要只会打"int",在取整的时候也要对应 不要用(int)xxx对一个属于double类型的取整 而最好用(long int)xxx。对于一些特殊变量,特别是记数性质的变量一定要赋初值"0",这个要引起高度重视!

5.输入输出一定要与数据类型对应 不要用"%d"来取一个小数类型的值,也不要用%d来输出一个小数类型的变量或是长整形变量 而应该用%f和%ld,其他的不多说。

6.关于if语句中的相等应该用"==",而经常会打成单等号,这个非常难发现,要注意!

7.注意数组大小,一个x[10]的数组只有0-9个对应值。注意标记变量i,j不要超过范围。

8.strcmp(char *a,char *b)这个比较两个串是否等价的函数,如果两个串等价,则返回值是0 而不是1 !!

9.关于文件输入输出方面,一定别忘了用fclose()关闭文件指针,交题目的时候一定要去掉getch();否则怎么超时的你都不知道。这点也要重视。

10.若定义两个整形a,b a=5,b=3,不要指望能用a/b得到 1.66666...而只会得到1要用(float)(a/b)




                                            by stein.13


IP属地:上海1楼2008-08-12 22:03回复