ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:223.65KB ,
资源ID:3325256      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3325256.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(05 VC60上机指导 C语言实验讲义.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

05 VC60上机指导 C语言实验讲义.docx

1、05 VC60上机指导 C语言实验讲义实验一 C语言的运行环境和运行过程实验目的:1.掌握c程序设计编程环境visual c+,掌握运行一个c程序设计的基本步骤,包括编辑、编译、连接和运行。2.掌握c语言程序设计的基本框架,能够编写简单的c程序。3.了解程序调试的思想,能找出并改正c程序中的语法错误。实验内容:1.在“我的电脑”上新建一个文件夹,用于存放c程序,文件夹名字可以是学号姓名。2.调试示例,在屏幕上显示一个短句“Hello World!”。源程序#include void main() printf(“Hello World!n”);运行结果:Hello World!基本步骤:(要求

2、熟练掌握)1)启动VC+“开始”“程序”“Microsoft Visual Studio 6.0”“Microsoft Visual C+6.0”进入VC+编程环境。2)新建文件(*.cpp)“文件”“新建”,单击“文件”选项卡,选择“C+Source Files”,修改文件保存“目录”和“文件”(文件名),单击“确定”。3)编辑和保存(注意:源程序一定要在英文状态下输入,即字符标点都要在半角状态下,同时注意大小写,一般都用小写)在编辑窗口输入源程序,然后执行“文件”“保存”或“文件”“另存为”4)编译(*.obj)用来检查语法错误“编译”“编译”或Ctrl+F7,在产生的工作区队话框中,选择

3、“是”。5)连接(*.exe)“编译”“构件”或F76)运行“编译”“执行”或Ctrl+F57)关闭程序工作区“文件”“关闭工作区”8)打开文件“文件”“打开”9)查看C源文件、目标文件和可执行文件的存放位置。源文件在保存目录下,目标文件和可执行文件在“保存目录Debug”中3.编程,在屏幕上显示一个短句“this is my first c program.”。4.调试示例,在屏幕上显示一个短句“welcome to you!”。源程序(有错误的程序)#include void mian() printf(Welcome to You!n”)运行结果(改正后的运行结果)Welcome to

4、You!操作步骤:)按照实验中介绍的步骤)输入上述源程序并保存。)编译,“编译”“编译”(Ctrl+F7),信息窗口中显示编译出错信息,如下图所示。)找出错误,在信息窗口中依次双击出错信息,编辑窗口就会出现一个箭头指向程序出错的位置,一般在箭头的当前行或上一行,可以找到出错语句。第行,出错信息:Welcome是一个未定义的变量,但Welcome并不是变量,出错的原因是Welcome前少了一个双引号。)改正错误,重新编译,得下如下图所示出错信息。出错信息:“”前少了分号。)再次改正错误,在“”前即printf()后加上“;”(英文状态),生新编译,显示正确)连接,“编译”“构件”(F7),出现如

5、下出错信息。出错信息:缺少主函数。)改正错误,即把“mian”改为“main”后,重新连接,信息窗口显示连接正确。)运行,“编译”“执行”(Ctrl+F5),观察结果是否与要求一致。5.改错,改正下列程序中的错误,在屏幕上显示以下行信息。*Welcome*源程序(有错误的程序)#include void main() Printf(“*n”); Printf(“ Welcome”) Printf(“*n”);实验报告要求将以上各题的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。 实验二 简单的C程序设计和基本数据处理实验目的:1.掌握C语言的

6、运算符和表达式的正确使用以及C语言的几种基本数据类型和基本输入输出函数的使用方法。2.通过编程进一步理解和掌握运算符的确切含义和功能。3.理解和掌握运算符与运算对象的关系,优先级和结合方向。4.通过编程,掌握C语言的几种基本数据类型,int、char、flloat、double,以及由这些基本数据类型构成的常量和变量的使用方法。5.掌握基本输入/输出函数的使用方法,包括printf()、scanf()、getchar()、putchar()。6.掌握简单的C程序的查错方法。实验内容:一、输入程序,观察输出结果,并对输出结果作出合理的解释。/* e1.cpp */#includevoid mai

7、n() float x; double y; x=213.82631;y=213.82631; printf(%-4.2f,-6.2en,x,y); 输出结果: 解释:2/* e2.cpp */ #include void main() char ch; int k; ch=a;k=10; printf(“%d,%x,%o,%c”,ch,ch,ch,ch,k); printf(“k=%dn”,k); 输出结果: 解释:3/* e3.cpp */ #include void main() float a1,a2; double b1,b2; a1=3141.59;a2=0.000001; b1=

8、3141.59;b2=0.000001; printf(“%f,%lfn”,a1+a2,b1+b2); 输出结果: 解释: 4 /* e4.cpp */#include void main() float x=5/2,y=5.0/2; printf(x=%f,y=%fn,x,y); 输出结果: 解释:二、编写程序。1编程(c1.cpp)定义3个整型变量x,y,z和一个实型变量averge,计算并输出3个整数的平均值averge,其中x=y=1,z=0。观察运行结果。再将x,y,z和averge改为实型变量,再观察运行结果。理解整除和不同类型数据进行混合运算的转化规律,对结果进行合理的解释。源程

9、序:输出结果:解释:2改写程序(c2.cpp),针对上一题要求,采用从键盘用scanf()函数输入x,y,z的值。要求输出结果的形式为averge=。源程序:输出结果:解释:3输入3个整数给a,b,c,然后交换它们中的数,把a中原来的值给b,把b原来的值给c,把c中原来的值给a。源程序: 输出结果: 三、调示示例。1求华氏温度100。F对应的摄氏温度。计算公式:C=(5/9)(F-32),其中C表示摄氏温度,F表示华氏温度。源程序(有错误)#includevoid main() int celsius;fahr;fahr=100;celsius=5*(fahr-32)/9;printf(fah

10、r=d,celsius=%dn,fahr,celsius);1)输入源程序。2)实验一中用菜单完成编译、连接和运行,现在介绍工具栏的使用方法。在工具栏或菜单栏上单击鼠标右键,出现如图所示的整个工具箱,在“编译”或“编译微型条”项前打上“”。 图中第1个按钮为“Compile”(编译,Ctrl+F7),第2个按钮为“Build”(构件,F7),第4个按钮为“Build Execute”(执行,Ctrl+F5)。3)单击“编译”工具条中的第1个按钮,出现第一个错误信息: Cannot open include file: stdoi.h: No such file or directory (不能

11、打开stdoi.h)改正(应该是stdio.h)后,重新编译,新产生的第一个错误信息是: fahr : undeclared identifier (“fahr”变量没有定义)改正:将fahr前的分号改为逗号,重新编译,编译正确。4)单击“编译”工具条中的第2个按钮,连接正确。5)单击“编译”工具条中的第4个按钮,运行结果为 : fahr=d,Celsius=100不符合题目的要求,仔细检查源程序,发现函数printf()中的d应为%d,改正的,重新连接和运行,运行结果与题目要求的结果一致,程序调试结束。 2改错,计算某个数x的平方y,并以算术公式的形式输出x和y的值.请不要删除源程序中的任何

12、注释。输入输出示例(假设x的值为):9=3*33*3=9#include void main() int y; y=x*x; printf(“%d=%d*%d”,x); /* 输出printf(“d*%d=%d”,y); 改正后的源程序:实验报告要求将以上各题的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。实验三 选择结构程序设计 实验目的1、了解C语句表示逻辑量的方法(以0代表“假”以1代表“真”); 2、学会正确使用逻辑运算符和逻辑表达式; 3、熟练掌握if语句和switch语句;4、熟练掌握switch语句中break语句的作用。实验内

13、容 1调试示例,输入参数a,b,c,求一元二次方程ax2+bx+c=0的根。源程序(有错误的程序)#include#includevoid main() double a,b,c,d; printf(“输入一元二次方程 a=,b=,c=n”); scanf(“a=%lf,b=%lf,c=%lf”,&a,&b,&c); d=b*b-4*a*c; if(a=0) if(b=0) if(c=0) printf( “0=0参数对方程无意义!”); else printf( “c!=0方程不成立”); else printf(“x=%0.2fn”,-c/b); else if(d=0) printf(“

14、x1=%0.2fn”,(-b+sqrt(d)/(2*a); printf(“x1=%0.2fn”,(-b-sqrt(d)/(2*a); else printf(“x1=%0.2f+%0.2fin”,-b/(2*a),sqrt(-d)/(2*a); printf(“x1=%0.2f-%0.2fin”,-b/(2*a),sqrt(-d)/(2*a); 运行结果(改正后程序的运行结果)输入一元二次方程 a= ,b= ,c=a=2.1, b=8.9, c=3.5x1=-7.22x2=-10.58运行结果(有错误的程序的运行结果)输入一元二次方程 a= ,b= ,c=a=2.1, b=8.9, c=3.

15、5x1=-7.22x2=-10.58对以上程序进行编译、连接、调试和运行如下:1)执行“编译”“构件”,对以上程序进行编译、连接,没有出现错误信息。2)调试开始,设置三个断点(断点的作用,程序执行到断点处暂停,使用户可以观察当前的变量或其他表达式的值,然后继续运行),先把光标定位到要设置断点的位置,然后单击编译工具条上的Inert/Remove Breakpoint或F9,断点就设置好了,如果要取消断点,只要把光标放到要取消的断点处,单击,这个断点就取消了。3)单击编译工具条(go F5),程序运行,等待输入一元二次方程a、b、c的值,输入a=2.1,b=8.9,c=3.5.4) 程序运行到第

16、一个断点,在Watch窗口输入变量名a,b,c观察执行到第一个断点时变量a,b,c的值是否和(2)中输入一致。注意,变量可以在Watch1、Watch2、Wathc3、Watch4任何一个窗口输入,输入可以是变量,也可以是表达式。5)假设我们在输入的时候,输错了变量a的值,我们可以在Watch窗口重新赋值,改变原来的值,如我们在Watch窗口中输入表达式a=0,则a的值就改变为0了。单步执行,单击,箭头指向下一行,说明程序执行到这一行,再观察变量a,b,c的值,发现变量b的值已经改变,原来输入的是8.9,现在已改变为0,我们在2)中输入变量b的值是8.9,说明在程序的执行过程中肯定有一个地方改

17、变了b的值,通过仔细观察、分析,发现if语句中误把相等“=”写成了赋值“=”,所以b=0了,单击(Stop Debugging(Shift+F5)停止调试,把源程序中的“=”改为”=”后,重新编译、连接,没有出现错误信息。6)单击,重新开始调试,执行3)和4),此时,观察b的值没有改变,单击,结束本次调试。7)单击,重新开始调试,观察结果的正确性。2编程,输入任意三个数n1,n2,n3,求其中最大的一个数。输入输出示例:Input n1,n2,n3: 2 10.5 8max=10.50提示:模仿1,运行时调试程序,包括设置断点、在Watch窗口设置变量的值等。思考:1)如何求5个数中的最大的一

18、个数2)如果要在3个字符中找出最大的一个,如何修改程序3编程,输入x,计算并输出下列分段函数f(x)的值(保留2位小数)。 y= x x1 2x-1 1=x=10 输入输出示例:Input x: -2.5f(-2.500000)=-2.5提示:该程序应该运行3次,每次测试一个分支,即分别输入每个分段中的x值。思考:假设x为整数,如何用switch计算上述分段函数。4编程,把百分制成绩转换成5级记分制,要求用switch语句。 90分以上(包括90): A 80至90分(包括80):B 70至80分(包括70):C 60至70分(包括60):D 60分以下:E 输入输出示例:Input Scor

19、e: 8686的等级为B提示:1)该程序应该运行6次,每次测试一种情况,即分别输入不同等级的成绩2)在switch中使用break语句思考:如何用if语句实现转换?5编程,输入2005年的任一个月,输出这个月的天数,要求使用switch语句。输入输出示例:Input month of 2005: 10 2005年10月有31天提示:1)该程序应该运行13次,分别输入112月,以及除此之外的数2)运行时调试跟踪月份的变化3)编程时注意不同月份可以有相同的天数思考:输入年和月,如何求该月的天数?6改错,对2个整数进行乘、除和求余运算。输入输出示例:输入x 运算符 y : 21 % 8 21 Mod

20、 8 = 5源程序(有错误的程序)#includevoid main() char sign; int x,y; prnitf(“输入x 运算符 y:”); scanf(“%d%c%d”,&x,&sign,&y); if(sign=*) printf(“%d * %d = %dn”,x,y,x*y); else if printf(“%d * %d = %dn”,x,y,x*y); else if printf(“%d * %d = %dn”,x,y,x*y); else printf(“运算符输入错误”);提示:在程序调试中,在变量窗口和Watch窗口中观察变量值的变化。实验报告要求将以上各

21、题的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。实验四 循环结构程序设计 (一)实验目的1熟练使用while、do-while语句实现循环程序设计2理解循环条件和循环体,以及for、while和do-while语句的相同及不同之处3掌握嵌套循环程序设计4熟练掌握下拉菜单Debug的程序调试方法实验内容 1调试示例:输入2个正整数m,n,输出它们的最小公倍数和最大公约数。源程序(有错误的程序)#includevoid main() int m,n,j,k; printf(“input m nn”); while(scanf(“%d%d”,&m

22、,&n),m0 & n“开始调试”-去命令,运行程序,输入 “-3 7”3)程序执行到第一个断点,变量窗口显示m=-3,n=7,说明有错。因为如果输入负数,必须重新输入,直到输入2个正数为止。注意:此时菜单栏中新出现一个“Debug”菜单,包括了调试工具栏中所有的调试工具,用户可以选择使用“Debug”菜单或调试工具栏来调试程序。作用相同。4)单击图标或按组合键Shift+F5停止调试,通过仔细分析,发现循环条件中m0 & n0应该是m0|n0。注意:此时,不一定要停止调试,用户可以在Watch窗口输入m=3,再继续调试。5)把&改为|,重新编译和连接,然后单击图标或组合键Ctrl+Shift

23、+F5重新开始调试,再单击图标或F5键,输入-3 7后,箭头如果不动,说明需要重新输入数据。6)重新输入数据3 7,程序执行到第一个断点,观察变量窗口,m=3,n=7,没有错误。7)继续单击,程序运行到第2个断点,变量窗口显示最小公倍数j的值是3,显然错误,说明第1个断点到第2个断点之间有错误。8)单击图标或按组合键Shift+F5停止调试,仔细分析程序,发现循环条件j/n!=0错误,因为只有被n除尽的j才是最小公倍数,循环条件应该是j%n!=0。9)重新编译、连接,并取消第一个断点,再单击图标或组合键Ctrl+Shift+F5重新开始调试,再单击图标或F5键,程序运行到新的第一个断点。10)

24、变量窗口显示最小公倍数j的值是21,最小公倍数计算正确。11)单击图标或F5键,程序运行到最后一个断点,变量窗口显示最大公约数k的值是1,最大公约数计算正确。12)单击图标或按组合键Shift+F5停止调试。编程,输入一批整数,先求出其中的偶数和及奇数和,然后输出偶数和与奇数和的差输入输出示例:输入一批整数:10 11 20 33Ctrl+ZSub=-14提示:从键盘输入Ctrl+Z,表示一批数据输入结束思考:如何从输入的数中找出一个最小的数。编程,输入个正实数eps,计算并输出下式的值,十到最后一项的绝对值小于eps。输入输出示例:Input eps:0.00001S = 0.866977思

25、考:如果条件改为前后2项的绝对值的差小于eps,如何编程。3编程,输入1个实数x,计算并输出下式的值,直到最后一项小于10-5。要求定义和调用函数fact(n)计算n的阶乘,以及定义和调用函数mypow(x,n)计算xn。输入输出示例:X=2S=3.761949提示:输入不同的正整数和负整数验证结果思考:如何计算的值。4编程,输入一个整数,求它的各位数字之和及位数。例如123的各位数字之和是6,位数是3.输入输出示例:输入一个整数:1234512345有5位数,各位数字之和是15提示:n表示一个整数,则n%10取个位数,n=n/10去掉个位数,组成一个新数。思考:如果要把每位数字转换为字符输出

26、,如何编程。5改错,输入2个整数,分别将其逆向输出。输入输出示例:123321123的逆向是321321的逆向是123源程序(有错误的程序)#includeint fun(int n) int m,y; y=0; if(n=0) return y; else return y;void main() int n,m; Scanf(“%d%d”,&n,&m); Printf(“%d的逆向是%dt”,n,fun(n); Printf(“%d的逆向是%dt”,m,fun(m);提示:模仿1调试程序,在变量窗口中观察变量值的变化,读者还可以在Watch窗口输入不同变量的值来验证程序的正确性。实验报告要

27、求将以上各题的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。实验五 循环结构程序设计 (二)实验目的1熟练掌握循环程序设计,包括嵌套循环2熟练掌握使用break、continue语句在循环程序设计中的实现3继续掌握VC+的程序调试方法实验内容 1调试示例,输入正整数的个数n,再输入n个正整数,判断它们是否为素数。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。源程序(有错误)#include#includevoid main() int i,j,k,m,n; printf(“输入正整数的个数n:”); scanf(“%d”,&n); printf(“输入%d个正整数n”); for(j=0;jk;j+) scanf(“%d”,&m); n=sqrt(m); for(i=2;in) printf(“%d是一个素数!n”,m); else printf(“%d不是一个素数!n”,m); 运行结果(改正后程序的运行结果)输入正整数的个数:2输入2个正整数1111是一个素数

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1