c++书中例题源代码第5章.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c书中例题源代码第5章

【例5.1】 从键盘上输入两个浮点数,编程求出它们的和。 #include iostream.h void main( ) { double x,y; coutInput double x and y: ; cinxy; double z=x+y; coutx+y=zendl; } 这是一个求两个浮点数之和的程序。下面使用一个标识符sum_double来对求两个浮点数之和的功能进行抽象。这种抽象是用若干条语句来实现的,所获取的抽象称为函数,而标识符sum_double称为函数名。具体抽象的实现如下: double sum_double(double x, double y) { return x+y; } 函数sum_double( )的功能用来求得两个参数x和y的和。这种抽象给使用者带来方便。使用者只需关心一个函数是做什么的,而不必关心这个函数是如何实现的。本例中,只要知道函数sum_double( )是求两个double型浮点数之和就可以了,至于如何求和,使用者不必关心。这就是函数的抽象。 主函数中要调用这个函数,便可以实现求两个浮点数之和。具体程序如下: #include iostream.h void main() { double a, b; cout Input double a and b: ; cin a b; double sum=sum_double(a, b); cout sum=sumendl; } 主函数中调用sum_double()函数时,可以直接引用这个函数名字,并给出函数的实参,这样便实现了参数化。 【例5.2】 分析下列程序输出结果,并说明由于不同的求值顺序而产生的两种不同结果。 #include iostream.h int sum_int(int i,int j) { return i+j; } void main( ) { int x(56),y(13); int s=sum_int(++x,x+y); coutsendl; } 【例5.3】 分析下列程序的输出结果,熟悉参数默认值的用法。 #include iostream.h void fun(int a=1,int b=2,int c=3) { couta=a,b=b,c=cendl; } void main( ) { fun( ); fun(9); fun(4,5); fun(7,8,9); } 【例5.4】 分析下列程序的输出结果,并分析设置参数默认值的特点。 #include iostream.h int q(5),p(7); int sum_int(int a,int b=p+q,int c=q*p); void main( ) { int x(5),y(10); int s1=sum_int(x); int s2=sum_int(x,y); couts1=s1\ns2=s2endl; } int sum_int(int a,int b,int c) { return a+b+c; } 【例5.5】 分析下列函数嵌套的结果。 #include iostream.h void fun1( ),fun2( ),fun3( ); void main( ) { coutIt is in main( ).endl; fun2( ); coutIt is back in main( ).\n; } void fun1( ) { coutIts in fun1( ).\n; fun3( ); coutIts back in fun1( ).\n; } void fun2( ) { coutIts in fun2( ).\n; fun1( ); coutIts back in fun2( ).\n; } void fun3( ) { coutIts in fun3( ).\n; } 【例5.6】 编写程序求下列式子的和。假定:K为5,N为6。 1K+2K+3K+…+NK 编程如下: #include iostream.h const int K(5),N(6); int sum_of_powers(int k,int n),powers(int m,int n); void main( ) { coutsum of Kpowers of integers from 1 to N=; coutsum_of_powers(K,N)endl; } int sum_of_powers(int k,int n) { int sum(0); for(int i(1);i=N;i++) sum+=

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档