- 10
- 0
- 约 11页
- 2017-06-10 发布于北京
- 举报
《解析C程序设计》第2章 简单程序设计 第4讲 简单程序设计-3 * 复习:改正逻辑错误的方法 观察程序的执行顺序和变量的变化,具体步骤是: 编译并连接后,将光标置于可能有总是的语句,点击工具栏上的“小手”工具,设置断点(想让程序停在哪就在哪里设置断点)。 单击“小手”左边的按钮,或选择build-debug-go,进入调试状态,此时,程序运行停止在设置断点的那一行(可见行的最左端有一黄色箭头,表明程序运行的当前位置),与此同时,可以看到下边的窗口显示当前状态涉及到的变量的值。点击build-step over,则程序执行当前这条语句,下边变量的值可能会随程序的运行而改变,多次单击step over,则程序按顺序单步执行,可以观察整个程序的执行顺序和变量的变化过程,如果想中途退出,请选择build-debug-stop debugging 。 二者结合可以帮你定位逻辑错误:当执行完一条语句后,当前变量的值并没有得到正确结果,则说明刚才那条语句的语义导致了错误。改正后,重新调试。 * 另外两个库函数:字符输入/输出函数 #include stdio.h void main() { char lower,upper; printf(“please input an lowercase:”); lower=getchar(); /*从键盘上输入一个字符,并赋值给lower */ upper=lower-32; printf(“after transform,it is ”); putchar(upper); /*将upper输出 */ } 一般用法:字符型变量=getchar( );含义是从键盘上敲入一个字符,然后把它赋给字符型变量。 另一种用法:getchar();功能相当于“按任意健继续”,一般用于程序最后,以便查看前边的结果。 格式:putchar( 字符 ); 功能:向终端输出一个字符。 参数可以是字符型常(变)量或整型常(变)量。例如:putchar(c ); putchar(‘a’); putchar( ‘\n’ ); putchar(97); * 例4 求三角形面积 根据下列公式求三角形面积,其中,a,b,c是三角形三边 开始 输入三边长 计算s 计算面积 结束 * 例4源程序 #include stdio.h #include math.h /*要用数据函数sqrt,此处必须包含与之相对应的头文件*/ /*程序功能:根据三边长求三角形的面积*/ void main() { float a,b,c,s,area; /* 定义实数变量*/ printf( Please input a,b,c: ); scanf(“%f,%f,%f”,a, b, c); /* 从键盘输入变量的值,%f之间用逗号分隔时,输入的三个数值一定要用逗号分开*/ s=(a+b+c)/2; area= sqrt(s*(s-a)*(s-b)*(s-c)); /* 计算面积 */ printf(area = %f\n, area);/* 输出面积*/ } * 复杂的数学计算如何实现? 直接调用C语言的库函数即可。 别忘了加#include math.h 请记住几个常用的函数: 函数名 功 能 函数名 功 能 sqrt(x) 计算x的平方根,x应大于等于0 exp(x) 计算ex的值 fabs(x) 计算x的绝对值 pow(x,y) 计算xy的值 log(x) 计算lnx的值 sin(x) 计算sinx的值,x为弧度值 log10(x) 计算lgx的值 cos(x) 计算cosx的值,x为弧度值 * 简单的程序测试 一次输入,得到正确的输出结果并不能说明问题,要精心选择不同的输入(测试用例),反复进行测试,才能逐渐发现程序里的问题 因此,要想测试例1程序是否正确,要制作一个测试表,如右图所示: 测试用例 预测结果 实际结果 3,4,5 area =6.000000 ? 1,1,5 你输入的数据不能构成三角形! ? 1,5,1 你输入的数据不能构成三角形! ? 5,1,1 你输入的数据不能构成三角形! ? 当所有实际结果都与预测结果一样时,方可结束程序测试。 如何让程序能够判断是否构成三角形?-选择结构时再讲。 * 课堂练习 2. P55习题2-13(可以作为编程题) 1. 求ax2+bx+c=0方程的根。 a,b,c由键盘输入,设 >0。众所周知,一元二次方程式的根为x1= x2= * 思考题 如果输入的三个边长不能构成三角形,怎么办? * 本讲小节 字符
您可能关注的文档
最近下载
- 2024-2025学年统编版道德与法治六年级下册全册教案(教学设计).pdf VIP
- 环保在线监测系统运行维护管理体系.pdf VIP
- 冯巧根 管理会计(第4版)课后习题答案.docx VIP
- 医疗废物岗位职责.docx VIP
- 最新人教版三年级数学下册全册教案(新课标版).docx VIP
- 基于单片机的火灾报警及灭火系统.docx VIP
- 基于单片机的灭火机器人设计.doc VIP
- 安徽省定远县2025年上半年事业单位公开招聘试题含答案分析.docx VIP
- 小学数学教学中数学建模思想与生活问题解决课题报告教学研究课题报告.docx
- 中国糖尿病防治指南(2024版)解读-糖尿病相关技术.pptx
原创力文档

文档评论(0)