c语言程序设计和调试的探讨

c语言程序设计和调试的探讨

ID:34426155

大小:246.14 KB

页数:3页

时间:2019-03-06

c语言程序设计和调试的探讨_第1页
c语言程序设计和调试的探讨_第2页
c语言程序设计和调试的探讨_第3页
资源描述:

《c语言程序设计和调试的探讨》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、——一~一一ComputerEducation..I文章编号:1672-5913(2009)12—0096—02C语言程序设计和调试的探讨黎自强,罗翠英(1.湘潭大学信息工程学院,湖南湘潭411105;2.湖南工业大学计算机系,湖南株洲412008)摘要:本文讨论了C语言的前缀++(前缀一)与后缀++(后缀__)运算符的优先级、C程序设计和调试的几点技巧,更好地让学生进一步学好C语言,掌握C语言程序设计,提高学生的软件开发能力。关键词:C语言程序设计;运算符;优先级;二维数组中图分类号:G642文献标识码:B1引言号运算符。本文的这一规则比较适合我们常常使用的TurboC编译系统,也容易被

2、学生理解和掌握。“C语言程序设计”课程对理工科专业学生来说,是例1:若i=3,则执行赋值语句'_++i;时是将i的值.一门非常重要的基础课程,但初学起来十分困难。其主要先变为4,再赋值给j’j的值变为4;而执行赋值语句i:i++:原因是:(1)c语言的数据类型和运算符多、表达式复杂;时是先将i的值赋给j,J的值为3,然后i的值先变为4。(2)初学者在学习过程中必须暂时保留人的思维形式,使例2:若i=3,则执行赋值语句.j=(i++)+(i++)+(i++);用计算机的程序模式工作。为了使学生学习好“C语言程时是将三个i的值先加得12赋给.j,J的值变12,然后i序设计”这门课程,许多教育工

3、作者对教学方法进行了深的值再三次增1变为6;而执行赋值语句j==(++i抖i)+(抖i);入的探索,积累了丰富的教学经验。例如:文献[1]介绍了时是先将i的值再三次增1变为6,然后将三个i的值相加C语言程序设计的案例教学方法,文献【2】讨论了C语言程得l8赋给i,i的值为18。序设计中关于自增和自减运算符的理解和编程要点。尽管例3:若i=3,则执行赋值语句printf(“%d”,一i++1;时如此,如何使学生能更好地掌握c语言程序设计仍然值得是将先输出i的相反数一3,然后i的值再增l变为4;而执教育工作者进一步探索。本文将自增和自减运算符分为优行赋值语句printf(“%d”,一十+i);

4、时根据优先级相同的负号先级不同的前缀++(前缀~)与后缀++(后缀一)两种运算符,与前缀自增运算符为自右向左的结合方向,则是先将i的给出若干程序设计和调试的技巧,使学生更好地掌握c语值增1变为4,然后再输出i的相反数一4。言程序设计。值得注意的两个问题:(1)当一个变量出现在一个函数的多个参数中时,不2关于自增和自减运算符能将自增或自减运算符作用于该变量,否则用本文规则不如果C语言表达式存在自增或自减运算符,则其值的能正确计算表达式的值和输出结果。例如:若i=3,则执计算和表达式中变量值的改变很容易弄错。文献【3~5]规行赋值语句printR‘%d,%d,',i,i}i++);时其输出结果

5、为定前缀自增(自减)和后缀自增(自减)运算符的优先级相同,(4,l2);而执行赋值语句printf(“%d,%d”,ii++,i);时其输都大于算术运算符,结合方向是自右向左。它们的区别是:出结果为(12,3)。前缀自增(自减)是在使用前增加或自减少1,而后缀自增(自(2)当自增或自减运算符出现在逻辑表达式中时,自减)是在使用后增加或自减少1。作者在教学实践中发现:增或自减运算可能不被计算。例如:学生按上述规则并不容易读懂程序和编写程序。本文把前若i=1,i=1,k=l,在计算表达式++ill++j&&++k时,缀自增(自减)和后缀自增(自减)运算符看成两种运算符,且因++i非0,不再计算

6、++i&&++k部分,直接得到整个表达规定前缀自增(自减)运算符的优先级大于算术运算符,后式的值为1,因此,计算表达式后,变量i的值为2,而i缀自增(自减)运算符的优先级低于赋值运算符,仅高于逗和k没有执行自增加运算,其值都为1。基金项目:2006年湘潭大学校级精品课程基金(湘大教发[2007]20)。作者简介:黎自强(1963一),男,教授,博士,研究方向为计算机图形学,计算机视觉,智能计算。罗翠英(1966一),女,湖南益阳人,湖南工业大学讲师,研究方向为计算机图形学。Compute—r呈一一一———⋯6FILEfp=NULL3关于scanf0函数和实型二维数组7fp=fopen(”i

7、n2.txt”,”r”);8if(fp!:NULL)在c语言程序设计中,常常利用scanfOi~数对二维实9fscanf(fP,”%d”,&n);10for(i=1;i<=ni++)型数组赋值,例如:下面的程序段是从键盘输入1O个数11sum=sum+i到二维实型数组x中。12printf(”%id\n“,sum)13fc1ose(fP)voidmain()14)(inti,Jfloatx[5][2】;当文件in2.tx

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。