- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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+=
您可能关注的文档
最近下载
- 口腔粘膜病的病例汇报.pptx VIP
- 2023华为认证HCIE-Datacom H12-891新题库版-下(其它题部分).pdf VIP
- 医院信息系统建设可行性报告.doc
- 河北省石家庄二中实验学校2022-2023学年高一11月期中生物试题(解析版).docx
- 小学语文群文阅读教学讲座材料:问道群文阅读,创生多维课堂ppt课件.pptx VIP
- 曹冲称象 跨学科项目式学习设计方案.docx
- 必威体育精装版光伏发电PHC管桩施工方案.pdf
- 央视100集纪录片《中国通史》文字稿.docx
- 大学物理 II-(热学、振动和波、光学、量子)(北京交大)中国大学MOOC慕课 章节测验期末考试客观题答案.docx
- 《群文阅读的实施方法和策略》 课件.pptx VIP
文档评论(0)