


已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.实验 2输入/ 输出方法、分支结构程序设计学号:姓名:实验日期:一、实验目的和要求(1) 掌握 c 语言各数据类型的概念,变量定义及赋值方法。(2) 掌握整型、字符型、实型等数据的输入输出方法,能正确使用各种格式控制符。(3) 掌握 c 语言的各种运算符,特别是自加(+)和自减( -)运算符,能正确使用这些运算符构成的表达式。(4) 掌握 c 语言逻辑量的表示方法,能够正确使用逻辑运算符和逻辑表达式或关系表达式。(5) 熟练掌握if 语句和 switch 语句,掌握条件表达式构成的选择结构。(6) 理解程序设计的顺序结构基本思想,掌握顺序结构语句特点;能够编写简单的程序解决具体问题。(7) 掌握简单的跟踪调试程序的方法,并学会基本调试程序方法。二、实验内容完成实验指导书中实验二的“基础部分”及实验三的“基础部分”和“增强部分”三、实验步骤及结果(一)实验题目完成情况* 【说明】实验题号的编写格式为:类型 +第几个实验 +实验题目序号 +小题序号, 其中,“类型”分为基础题(用 ex 表示)、增强题和提高题(用 eh 表示)、课外题(用 sup 表示)。如: ex2-1-3 表示实验二基础题第 1 题的第 3 小题, eh4-2 表示实验四增强题第 2 题,等等。后不赘述。实验二部分:ex2-1-1 题的运行结果及其分析。【请填空。截图的操作方法:先点击欲截取的窗口使之置于屏幕最前方,并作适当的缩放, 再按快捷键 + 将窗口截取到内存中,然后打开word 将光标移到欲插入图片的位置上进行粘贴即可。也可对图片进行适当剪切,裁剪掉多余部分。注意:截图上必须有你自己的学号或姓名等信息,否则视为抄袭。】;.ex2-1-分析: s 值的计算是先算a 除以 5 取余的值,再算其乘于( x-y)除以 2 取余的整型数,得到的值除以二,再加上x。ex2-1-2 请在下面插入该程序的运行结果及其分析。请在此框内插入本程序运行成功时的截图分析 :第一个 p 的值先调用后自加,第一个q 则是先自加后调用第二个 p 直接调用第一个p 的值加上3, 第二个 q 则是先加 1 后加上 4.ex2-2-1 请在下面分别插入改正错误后的源程序代码及运行成功时的画面: 源程序代码:请在此框内粘贴修改后正确的程序代码。方法:先在vc 中将全部源代码选定并复制, 再粘贴到此处即可。#include int main()int a,b,c,sum; double ver;printf( 输入三个数 :);scanf(%d%d%d,&a,&b,&c); sum = a+b+c;ver = sum/3.0;printf( 和 :%dn,sum); printf( 平均值 :%lfn,ver); return 0;运行结果:请在此框内插入本程序运行成功时的截图ex2-2-2 请在下面分别插入改正错误后的源程序代码及运行成功时的画面: 源程序代码:请在此框内粘贴修改后正确的程序代码。#include voidmain()int i,j,p,m,n; scanf(%d,%d,%d,&i,&j,&p); m=i+j+p;n=(int)m/3;printf(%d,%dn,m,n);运行结果:请在此框内插入本程序运行成功时的截图实验三部分:ex3-1 请在下面分别插入改正错误后的源程序代码及运行成功时的画面: 源程序代码:请在此粘贴修改后正确的程序代码。#include void main()double x,y; printf(enter x:n); scanf(%lf,&x); if(x=10)y=1/x;else(x!=10);y=x; printf(f(%0.1lf)=%lfn,x ,y);运行结果:请在此粘贴本程序运行成功时的截图ex3-2 请在下面分别插入改正错误后的源程序代码及运行成功时的画面:源程序代码:请在此粘贴修改后正确的程序代码。#include void main()int score;printf(enter score=); scanf(%d,&score); switch(score/10)case 10:case 9 :printf(an); case 8 :printf(bn); case 7 :printf(cn); case 6 :printf(dn); default:printf(en);运行结果:请在此粘贴本程序运行成功时的截图eh3-1 请在下面分别插入完整填空后的源程序代码及运行成功时的画面: 源程序代码:请在此粘贴填空后正确的程序代码。#includevoid main()int c,t,m;printf(int put the number of coat and trousers your want buy:n); scanf(%d,%d,&c,&t);if(t=c)if(c50)m=c*80; else m=m*90; elseif(ct) if(t=50)m=t*80+(c-t)*60;elsem=t*90+(c-t)*60; elseif(t=50)m=c*80+(t-c)*45;printf(%d,m)elsem=c*90+(t-c)*45;运行结果:请在此粘贴本程序运行成功时的截图eh3-2 请在下面分别插入完整的源程序代码及运行成功时的画面: 源程序代码:请在此粘贴正确的程序代码。#include #include void main()float a,b,c,i; scanf(%a,%b,%c,&a,&b,&c); if(a=0)printf( 不是一元二次方程error:n);elseif(b*b-4*a*c)=0) printf(x1=x2=%f,(-b)/(2*a); elseif(b*b-4*a*c)0)printf(x1=%fn,(-b)/(2*b)+sqrt(b*b-4*a*c)/(2*a);printf(x2=%fn,(-b)/(2*b)-sqrt(b*b-4*a*c)/(2*a);elseprintf(x1=%fn,(-b)/(2*b)+i*(sqrt(b*b-4*a*c)/(2*a);printf(x2=%fn,(-b)/(2*b)-i*(sqrt(b*b-4*a*c)/(2*a);运行结果:请在此粘贴本程序运行成功时的截图(二)程序调试方法1、语法错误和逻辑错误的区别何在? 在此回答问题语法错误通不过编译器的编译,逻辑错误则能通过。语法错误的违背了此种语言的基本规则,逻辑错误指算法上的错误。比如循环语句的结束条件没有写,语句能通过编译,但运行后会发生死循环无法跳出的现象。2、如何启动单步调试? 在此回答问题鼠标点在需要停下的那一行设置断点按f9单步运行按 f10进入函数按 f11进入调试按 f5或者单击菜单栏“组建”下的“开始调试”,单击“ stepinto ”,也可以按快捷键 f11,使每条语句单独执行。3、要使程序运行到“ss=(k”这一行暂停下来,该如何操作?在此回答问题点到那个 “ ss=(k”语句,按f9 ,设置一个断点,f5 运行后,如果执行到那句,就会停在那,然后再按f10 即可单步运行下去。4、怎样终止调试状态(程序复位)? 在此回答问题利用 run菜单下的program reset命令或快捷键ctrl+f2可以终止当前程序的运行5、单步调试状态下,向下运行一条语句的操作方法(分两种情况回答,第一种,跟踪到自定义函数内部,第2 种,不跟踪到自定义函数内部):在此回答问题1. 单击调试菜单中的stepinto 进入到自定义函数内部。2. 单击调试菜单中的stepover 不跟踪到自定义函数内部6 、 在 运 行ex2-1-2.c时 , 假 如 要 在 运 行 语 句 “ p=i+;q=-j;” 后 , 尚 未 执 行 语 句“printf(%d,%d,%d,%dn,i,j,p,q);”时,先观察变量i, j, p,q 的值,操作方法为:在此回答问题鼠标点在 “ printf(%d,%d,%d,%dn,i,j,p,q);” 停下的设置断点按f9请把观察这些变量时的画面粘贴到下面: 请在此框内插入观察到变量值的截图7、c 程序在什么情况下运行需要输入数据才能得出运行结果?输入的测试数据需要注意哪些事项?在此回答问题在调试与调试完成后的运行中,类型要对,格式要正确,数据范围要在规定范围内8、在运行eh3-1.c 时,至少需要输入几组测试数据才能对程序进行完整的测试?如何进行输入多组数据的测试?在此回答问题6 组循环按照格式读入每组数据即可。四、选作实验题目完成情况若你选作了课堂布置之外的题目, 请按
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论