1、实验题目标准库函数使用与编译预处理实验时间 2013-5-26实验地点DS1421实验成绩 实验性质验证性 设计性 综合性教师评价:算法/实验过程正确; 源程序/实验内容提交 程序结构/实验步骤合理;实验结果正确; 语法、语义正确; 报告规范; 其他: 评价教师签名:一、实验目的1、理解变量的作用域和生存期的概念;2、掌握全局变量和局部变量的定义方法以及其作用域的确定方法,并能进行区别;3、理解“文件包含”处理和“工程文件”的方法概念及区别,并学会应用;4、理解局部变量对同名全局变量的屏蔽作用,掌握在程序流程的执行点选择确定操作变量的方法;5. 理解和掌握最大公约数和最小公倍数的求解方法及程序
2、实现。二、实验项目内容(实验题目)编程实现功能:求2个数的最大公约数和最小公倍数。要求用函数实现,并且将主函数和这两个函数分别存入3个文件“sy3-学号-a.cpp”,“sy3-学号-b.cpp”,“sy3-学号-c.cpp”中。然后用文件包含和工程文件2种方法实现多文件编译链接。三、源程序(实验过程或算法)1、“#include”方式:“a.cpp”文件如下:#include#include e:20126074sy3-20126074-b.cpp#include e:20126074sy3-20126074-c.cpplong b(int m,int n);long c(int m,int
3、 n,int r);void main()long m1,n1,g,l;printf(This is in File sy3-2010-a.cppn);printf(* input: m1,n1 *n);scanf(%ld,%ld,&m1,&n1);g=b(m1,n1);printf(g=%ldn,g);l=c(m1,n1,g); printf(l=%ldn,l);“b.cpp”文件如下:#includelong b(int m,int n)int r,t;printf(This is in File sy3-20126074-b.cppn);if(mn)t=m,m=n,n=t;while(n
4、!=0)r=m%n; m=n; n=r;return m;“c.cpp”文件如下:#includelong c(int m,int n,int r)long bs;printf(This is in File sy3-20126074-c.cppn);bs=m*n/r;return bs; 对“a.cpp”文件进行编译、连接、运行,得到结果。2、工程方式: a.cpp+b.cpp+c.cpp形成工程文件sy3,对”工程文件sy3”编译、连接、运行,得到结果。其窗口如下:四、源程序调试过程(或运行结果)使用文件包含所得结果:使用工程文件所得结果:五、实验小结(体会):1.通过本次实验我学会了如何使用“文件包含”处理和“工程文件”处理。2.通过本次实验我了解到了不同类型的变量作用域和生存期不同,要区别对待,分开使用才能更好的编写程序。完成时间:2013-5-26