VC++6.0上机指导——C语言实验讲义.doc
《VC++6.0上机指导——C语言实验讲义.doc》由会员分享,可在线阅读,更多相关《VC++6.0上机指导——C语言实验讲义.doc(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验一 C语言的运行环境和运行过程(3学时)实验二 简单的C程序设计和基本数据处理(3学时)实验三 选择结构程序设计(3学时)实验四 循环结构程序设计 (一)(3学时)实验五 循环结构程序设计 (二)(3学时)实验六 数组(3学时)实验七 字符串 (1学时)实验八 结构数组(3学时)实验九 函数和程序结构(3学时) 实验十 指针(6学时)实验十一 函数和程序结构(1学时)附录 快捷键共计32学时实验一 C语言的运行环境和运行过程实验目的:1. 掌握c程序设计编程环境visual c+,掌握运行一个c程序设计的基本步骤,包括编辑、编译、连接和运行。2. 掌握c语言程序设计的基本框架,能够编写简单
2、的c程序。3. 了解程序调试的思想,能找出并改正c程序中的语法错误。实验内容:1. 在“我的电脑”上新建一个文件夹,用于存放c程序,文件夹名字可以是学号姓名。2. 调试示例,在屏幕上显示一个短句“Hello World!”。源程序#include void main()printf(“Hello World!n”);运行结果:Hello World!基本步骤:(要求熟练掌握)1) 启动VC+“开始”“程序”“Microsoft Visual Studio 6.0”“Microsoft Visual C+6.0”进入VC+编程环境。2) 新建文件(*.cpp)“文件”“新建”,单击“文件”选项卡
3、,选择“C+Source Files”,修改文件保存“目录”和“文件”(文件名),单击“确定”。3) 编辑和保存(注意:源程序一定要在英文状态下输入,即字符标点都要在半角状态下,同时注意大小写,一般都用小写)在编辑窗口输入源程序,然后执行“文件”“保存”或“文件”“另存为”4) 编译(*.obj)用来检查语法错误“编译”“编译”或Ctrl+F7,在产生的工作区队话框中,选择“是”。5) 连接(*.exe)“编译”“构件”或F76) 运行“编译”“执行”或Ctrl+F57) 关闭程序工作区“文件”“关闭工作区”8) 打开文件“文件”“打开”9) 查看C源文件、目标文件和可执行文件的存放位置。源文
4、件在保存目录下,目标文件和可执行文件在“保存目录Debug”中3. 编程,在屏幕上显示一个短句“this is my first c program.”。4. 调试示例,在屏幕上显示一个短句“welcome to you!”。源程序(有错误的程序)#include void mian()printf(Welcome to You!n”)运行结果(改正后的运行结果)Welcome to You!操作步骤:)按照实验中介绍的步骤)输入上述源程序并保存。)编译,“编译”“编译”(Ctrl+F7),信息窗口中显示编译出错信息,如下图所示。)找出错误,在信息窗口中依次双击出错信息,编辑窗口就会出现一个箭
5、头指向程序出错的位置,一般在箭头的当前行或上一行,可以找到出错语句。第行,出错信息:Welcome是一个未定义的变量,但Welcome并不是变量,出错的原因是Welcome前少了一个双引号。)改正错误,重新编译,得下如下图所示出错信息。出错信息:“”前少了分号。)再次改正错误,在“”前即printf()后加上“;”(英文状态),生新编译,显示正确)连接,“编译”“构件”(F7),出现如下出错信息。出错信息:缺少主函数。)改正错误,即把“mian”改为“main”后,重新连接,信息窗口显示连接正确。)运行,“编译”“执行”(Ctrl+F5),观察结果是否与要求一致。5. 改错,改正下列程序中的错
6、误,在屏幕上显示以下行信息。*Welcome*源程序(有错误的程序)#include void main()Printf(“*n”);Printf(“ Welcome”)Printf(“*n”);实验报告要求将以上各题的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。#include void main()printf(*n);printf(Welcomen);printf(*n);验证:1、转义字符的使用main() int a,b,c; a=5; b=6; c=7; printf(a b ctderfn); printf(hijktLbMn
7、);2、向字符变量赋以整数#include main() char a,b; a=120; b=121; printf(%c,%cn,a,b); printf(%d,%dn,a,b); 3、解释运行结果#include main() char a,b; a=a; /A的ASCII =65 b=b; /B的ASCII=66 a=a-32; /a的ASCII =97 b=b-32; /b的ASCII =98 printf(%c,%cn%d,%dn,a,b,a,b); 4、 给定一个大写字母,要求用小写字母输出。#include int main ( ) char c1,c2; c1=A; c2=c
8、1+32; printf(%cn,c2); printf(”%dn”,c2); return 0;5、#include / 这是编译预处理命令 int main( ) / 定义主函数 / 函数开始 int a1,a2,b=2,c=7,d=5; a1=(+b,c-,d+3); /对于给a1赋值的代码,有三个表达式,用逗号分开,所以最终的值/应该是最后一个表达式的值,也就是(d+3)的值,为8 / ,所以a1的值为8 a2=+b,c-,d+3; /对于给a2赋值的代码,也是有三个表达式,这时的三个表达式为a2=+b、c-、d+3; (这是因为赋值运算符比逗号运算符 / 优先级高)所以最终表达式的值
9、虽然也为8,但a2=4(第2行代码运算完时,b=3,即第3行代码运行时,b的值为3) printf(sum is %dn,a1); printf(sum is %dn,a2); / 输出结果 return 0; / 使函数返回值为0 6、解方程,小数点对齐#include #include int main ( ) double a,b,c,disc,x1,x2,p,q; scanf(%lf%lf%lf,&a,&b,&c); disc=b*b-4*a*c; p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q; x2=p-q; printf(x1=%7.2fnx
10、2=%7.2fn,x1,x2); return 0; a,b,c之间用空格分开,在printf函数中的格式声明7.2f,表示在输出x1和x2时,指定数据占7列,其中小数占2列。这样做的好处是:可以根据实际需要来输出小数的位数,因为并不是任何时候都需要6位小数的。如果输出多个数据,各占一行,而用同一个格式声明(如%7. 2f),即使输出的数据整数部分值不同,但输出时上下行必然按小数点对齐,使输出数据整齐美观。 “%d”表示按十进制整型输出;“%ld”表示按十进制长整型输出;输出表列中给出了各个输出项,要求格式字符串和各输出项在数量和类型上应该一一对应。s格式:用来输出一个串。有几中用法%s:例如
11、:printf(%s, CHINA)输出CHINA字符串(不包括双引号)。%ms:输出的字符串占m列,如字符串本身长度大于m,则突破获m的限制,将字符串全部输出。若串长小于m,则左补空格。%-ms:如果串长小于m,则在m列范围内,字符串向左靠,右补空格。%m.ns:输出占m列,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格。%-m.ns:其中m、n含义同上,n个字符输出在m列范围的左侧,右补空格。如果nm,则自动取n值,即保证n个字符正常输出。用%f输出实数,只能得到位小数;格式字符串的一般形式为: 标志输出最小宽度.精度长度类型%20.15f 数据宽度为20,其中小数15位
12、。小数点占1位,整数还剩4位.%.0f 无小数位。小结:f格式:用来输出实数(包括单、双精度),以小数形式输出。有以下几种用法:%f:不指定宽度,整数部分全部输出并输出6位小数。%m.nf:输出共占m列,其中有n位小数,如数值宽度小于m左端补空格。 %-m.nf:输出共占n列,其中有n位小数,如数值宽度小于m右端补空格。结果左对齐,右边填空格%e:数字部分(又称尾数)输出6位小数,指数部分占5位。printf(“%13.2en”,123.456); /%13.2 2位小数,数据宽13位。“1.23e+002”占据了9列,所以它的前面会有4个空格:实验二 简单的C程序设计和基本数据处理实验目的:
13、1. 掌握C语言的运算符和表达式的正确使用以及C语言的几种基本数据类型和基本输入输出函数的使用方法。2. 通过编程进一步理解和掌握运算符的确切含义和功能。3. 理解和掌握运算符与运算对象的关系,优先级和结合方向。4. 通过编程,掌握C语言的几种基本数据类型,int、char、flloat、double,以及由这些基本数据类型构成的常量和变量的使用方法。5. 掌握基本输入/输出函数的使用方法,包括printf()、scanf()、getchar()、putchar()。6. 掌握简单的C程序的查错方法。实验内容:一、 输入程序,观察输出结果,并对输出结果作出合理的解释。/* e1.cpp */#
14、includevoid main() float x;double y;x=213.82631;y=213.82631;printf(%-4.2f,-6.2en,x,y); 输出结果:213.83 -6.2e解释:2/* e2.cpp */#includevoid main() char ch; int k;ch=a;k=10;printf(“%d,%x,%o,%c”,ch,ch,ch,ch,k);printf(“k=%dn”,k);输出结果:97.61.141.ak=%d解释:3/* e3.cpp */ #includevoid main()float a1,a2;double b1,b2;
15、a1=3141.59;a2=0.;b1=3141.59;b2=0.;printf(“%f,%lfn”,a1+a2,b1+b2);输出结果:3141. 3141. 解释: yichu 4 /* e4.cpp */#includevoid main() float x=5/2,y=5.0/2;printf(x=%f,y=%fn,x,y);输出结果:2. 2.解释:二、 编写程序。1 编程(c1.cpp)定义3个整型变量x,y,z和一个实型变量averge,计算并输出3个整数的平均值averge,其中x=y=1,z=0。观察运行结果。再将x,y,z和averge改为实型变量,再观察运行结果。理解整除
16、和不同类型数据进行混合运算的转化规律,对结果进行合理的解释。源程序:#include输出结果:解释:2 改写程序(c2.cpp),针对上一题要求,采用从键盘用scanf()函数输入x,y,z的值。要求输出结果的形式为averge=。源程序:输出结果:解释:3 输入3个整数给a,b,c,然后交换它们中的数,把a中原来的值给b,把b原来的值给c,把c中原来的值给a。源程序:#includemain()int a,b,c,t;scanf(%d,%d,%d,&a,&b,&c );t=b;b=a;a=c;c=t;printf(%d%d%d,a,b,c); 输出结果: 三、 调示示例。1 求华氏温度100
17、。F对应的摄氏温度。计算公式:C=(5/9)(F-32),其中C表示摄氏温度,F表示华氏温度。源程序(有错误)#includevoid main() int celsius;fahr;fahr=100;celsius=5*(fahr-32)/9;printf(fahr=d,celsius=%dn,fahr,celsius);1)输入源程序。2)实验一中用菜单完成编译、连接和运行,现在介绍工具栏的使用方法。在工具栏或菜单栏上单击鼠标右键,出现如图所示的整个工具箱,在“编译”或“编译微型条”项前打上“”。 图中第1个按钮为“Compile”(编译,Ctrl+F7),第2个按钮为“Build”(构件
18、,F7),第4个按钮为“Build Execute”(执行,Ctrl+F5)。3)单击“编译”工具条中的第1个按钮,出现第一个错误信息: Cannot open include file: stdoi.h: No such file or directory (不能打开stdoi.h)改正(应该是stdio.h)后,重新编译,新产生的第一个错误信息是: fahr : undeclared identifier (“fahr”变量没有定义)改正:将fahr前的分号改为逗号,重新编译,编译正确。4)单击“编译”工具条中的第2个按钮,连接正确。5)单击“编译”工具条中的第4个按钮,运行结果为 : f
19、ahr=d,Celsius=100不符合题目的要求,仔细检查源程序,发现函数printf()中的d应为%d,改正的,重新连接和运行,运行结果与题目要求的结果一致,程序调试结束。 2 改错,计算某个数x的平方y,并以算术公式的形式输出x和y的值.请不要删除源程序中的任何注释。输入输出示例(假设x的值为):9=3*33*3=9#include void main() int y; y=x*x; printf(“%d=%d*%d”,x); /* 输出printf(“d*%d=%d”,y); 改正后的源程序:#include void main() int x,y; y=x*x; printf(%d=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VC 6.0 上机 指导 语言 实验 讲义
限制150内