论文首页哲学论文经济论文法学论文教育论文文学论文历史论文理学论文工学论文医学论文管理论文艺术论文 |
int isprime(int n) { int i; for(i=2;i<n;i++) if(n%i==0) return 0; return 1; } 程序段2 判断素数的程序段 上面的程序,完全可以实现题目要求的功能,初学者往往满足于此。但是当对for循环的执行次数进行分析时,我们发现:当n不是素数时,没有任何问题;而当 n是素数时,循环体就要执行(n-2)次,而实际上是不需要这么多次的。根据数学的知识,可以将次数降为n/2或n的算术平方根,这样可以大大减少循环体的执行次数,提高程序的效率。
程序的执行效率是编程中时刻需要考虑的问题,也是程序设计中的基本要求。这需要许多算法方面的知识,对于初学者来说,要求可能过高,但是我们在讲授过程中要注意向学生灌输这种思想,从学习之初就要打下良好的基础,尤其是类似上面例子中这样显而易见的情况,可以提醒学生在编制完一道程序以后,检验一下,是否还有可优化的地方,这对以后进一步高级编程的学习都是必要的。5 结束语 以上这些,都是本人在授课过程中的一些体会,可能比较肤浅,但是从初学者的角度来看,却是必要的。如何让一名初学者尽快摆脱日常的思维定式,更加透彻地理解和掌握程序设计中的基本思想,领会程序设计的精髓,是高级语言程序设计这门课程在讲授过程中,应该时刻注意的问题。希望本文能在这方面起到一点作用,同时望广大同仁多多指教。参考文献[1] 谭浩强. C 语言程序设计(第二版)[M]. 北京:清华大学出版社,1999[2] 苏运霖译. 计算机程序设计艺术第1 卷 基本算法[M]. 北京:国防工业出版社,2002