欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    实验报告一(共13页).doc

    • 资源ID:27097958       资源大小:57.50KB        全文页数:13页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    实验报告一(共13页).doc

    精选优质文档-倾情为你奉上实验一 C+基础开课实验室:数学实验室 指导老师:韩逢庆 时间:2010.3.18学院:理学院 专业:信息与计算科学 班级:2008级1班 姓名:张雄 学号:一、 实验目的1、进一步了解和熟悉 VC+6.0 开发环境,学会在 VC+6.0 环境下调试程序; 2、熟悉 C+ 中简单的标准输入输出函数的实用; 3、理解 const 修饰符的作用,并学会应用 const 修饰符; 4、理解内置(内联)函数的优缺点并学会使用内置函数; 5、理解和使用函数重载以及带默认参数的函数; 6、使用 new 和 delete 进行动态内存管理; 7、理解和使用引用。二、 实验内容 程序理解、程序设计三、 实验要求1、使用函数重载的方法定义两个重名函数,分别求出整形数平面间两点间距离和双精度平面间两点间距离,如果没有输入第二点的坐标则默认为圆点(0,0)。 2、设计一个函数:exchange(float x, float y, float z) ,当调用 exchange(a,b,c) 时,将 a 的内容赋值给 b , b 的内容赋值给 c , c 的内容赋值给 a ,要求采用引用的方式来实现。 3、设计一个程序,测试 const 的三种用法:指向常量的指针,常指针,指向常量的常指针。 4、编写一个函数,实现两个字符串变量的交换,要求参数用引用。5、设计一个程序,比较内联函数和普通函数在时间开销和目标文件大小等方面的区别。四、 实验过程设计略。五、 实验结果分析(一)、程序理解1.#include <iostream.h> int max_def( int x, int y) return (x>y?x:y); int max_def( int x, int y, int z) int temp = 0; return (temp=(x>y?x:y)>z?temp:z; double max_def( double x, double y) return (x>y?x:y); int main() int x1 = 0; int x2 = 0; double d1 = 0.0; double d2 = 0.0; x1 = max_def(5,6); x2 = max_def(2,3,4); d1 = max_def(2.1,5.6); d2 = max_def(12.3,3.4,7.8);cout<< "x1=" <<x1<<endl; cout<< "x2=" <<x2<<endl; cout<< "d1=" <<d1<<endl; cout<< "d2=" <<d2<<endl;问题一:上述程序的输出结果是什么? 问题二:哪些情况可以参与函数的重载?答:同名函数具有相同的功能,而只是参数的个数和参数的类型不同时可以参与函数的重载。 问题三:处调用的是哪个函数?答:调用的是int max_def( int x, int y, int z) int temp = 0; return (temp=(x>y?x:y)>z?temp:z; 问题四:处的输出结果为什么是 d2=12 ,而不是 d2=12.3 ?   答:因为该函数的类型为int型,所以返回整型值。2. #include <iostream.h> int main() int *p1 = new int ; - int *p2 = new int (0); - char *p3 = new char 64; - return 1; 问题一:、处动态申请内存分别代表什么不一样的意思? 答:处*p1指向一个未初始化的int型对象;处*p2指向一个表示为0的int型对象; 处*p3指向64个char型对象。问题二:该程序存在什么隐患?改正该程序使隐患消除。 #include <iostream.h> int main() int *p1 ;p1= new int ; int *p2 ;p2= new int (0); char *p3 ;p3= new char 64; return 1; 在分配操作结束后,返回的地址值为0,内存申请未成功。 3. #include <iostream.h> void swap( int a, int b) int temp = a; a = b; b = temp; void swap( int *a, int *b) int temp = *a; *a = *b; *b = temp; int main() int i = 5; int j = 10; cout<< "Before swap: i=" <<i<< ",j=" <<j<<endl; swap(i,j); - cout<< "After the first swap: i=" <<i<< ",j=" <<j<<endl; swap(&i,&j); - cout<< "After the second swap: i=" <<i<< ",j=" <<j<<endl; return 1; 问题一:上述程序的输出结果是什么? 问题二:处函数调用后并不能实现两个数的交换,而处却可以,为什么? 答:处交换的是i和j的地址值,处交换的是i和j的值问题三:处调用的是哪个重载函数? 答:void swap( int *a, int *b) int temp = *a; *a = *b; *b = temp; (二)、程序设计1. #include<iostream.h>#include<math.h>void main()int juli(int,int,int,int);double juli(double,double,double,double);int a,b,c,d,s;cout<<"please input integer a,b,c,d="cin>>a>>b>>c>>d;s=juli(a,b,c,d);cout<<"juli_abcd="<<s<<endl;double e,f,g,h,r;cout<<"please input double e,f,g,h="cin>>e>>f>>g>>h;r=juli(e,f,g,h);cout<<"juli_efgh="<<r<<endl;int juli(int x,int y,int z,int t) int m;m=sqrt(y-x)*(y-x)+(t-z)*(t-z);return m;double juli(double x,double y,double z,double t) double m;m=sqrt(y-x)*(y-x)+(t-z)*(t-z);return m;运行结果:2.#include<iostream.h>main()float a,b,c;void exchange(float &, float &, float &);cout<<"please input a,b,c="cin>>a>>b>>c;exchange(a,b,c);cout<<"a="<<a<<endl;cout<<"b="<<b<<endl;cout<<"c="<<c<<endl;void exchange(float &x, float &y, float &z)x=y;y=z;z=x;运行结果:3. #include<iostream.h>void main()int c=4,d=5,m=6;int const *p1=&c;const int *p2=&d;const int *const p3=&m; p1=&c;/*p1=d;/errorp2=&d;/*p2=d;/error /p3=&d;/error/*p3=d;/errorcout<<"*p1="<<*p1<<"n"<<"*p2="<<*p2<<"n"<<"*p3="<<*p3<<endl;运行结果:4. #include<iostream.h>#define N 10void swap(char &,char &);void main()char s1N,s2N;int i;cout<<"please input s1:n"cin>>s1;cout<<"please input s2:n"cin>>s2;for(i=0;i<10;i+)swap(s1i,s2i);cout<<"after swap:ns1="<<s1<<":ns2="<<s2<<endl;void swap(char &s1,char &s2)char s3;s3=s1;s1=s2;s2=s3;运行结果:5. #include<iostream>#include<ctime>using namespace std;inline double CalArea(double r)return 3.14*r*r;double mianji(double r)return 3.14*r*r;int main()int i;double r=3.0;double area1,area2;time_t now;time(&now);printf("%sn",asctime(localtime(&now);for(i=0;i<22222*22222;i+)area1=CalArea(r);time(&now);printf("%sn",asctime(localtime(&now);for(i=0;i<22222*22222;i+)area2=mianji(r);time(&now);printf("%sn",asctime(localtime(&now);cout<<area1<<"n"<<area2<<endl;return 0; 运行结果:六、 实验体会通过实验一的练习,对C+基础有了更进一步的认识,并且理解了 const 修饰符的作用,并学会应用 const 修饰符,以及内置(内联)函数的使用,理解和使用函数重载以及带默认参数的函数;理解和使用引用。七、 附录:(源代码)专心-专注-专业

    注意事项

    本文(实验报告一(共13页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开