第一范文网 - 专业文章范例文档资料分享平台

面向对象程序设计(C++)自我测试练习参考答案 (3)

来源:用户分享 时间:2020-06-28 本文由核能气质少年 分享 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

cout<<\请输入日期:\

cin>>a.year >>a.month >>a.day ;

cout<

5.由键盘输入N名学生姓名,再按字典排列输出N名学生的姓名。 #include #include #define N 4 void main() { char a[N][10], i, k, t[10]; for(i=0;i=k;i--) if(strcmp(a[i],a[i-1])<0) { strcpy(t,a[i]); strcpy(a[i],a[i-1]); strcpy(a[i-1],t); } //反序则交换 } cout<<\排序后的成绩是:\ for(i=0;i

第5章 函 数

一、单选题

1.不能作为函数重载判断依据的是( B )。 A. const B. 返回类型 C. 参数个数 D. 参数类型 2.函数定义为fnFact(int &x),变量定义n=100,则下面调用正确的是( C )。 A.fnFact(20) B. fnFact(10+n) C. fnFact(n) D. fnFact(&n) 3.下面的函数调用语句中,fnNunc()函数的实参个数是( A )。 fnNunc(f2(v1,v2),(v3,v4,v5),(v6,max(v7,v8))); A. 3 B. 4 C. 5 D. 8 4. 数组名作为实参传递给函数时,传递的是( C )。 A.该数组长度 B. 该数组的元素个数 C.该数组首地址 D. 该数组中各元素的值

5.设函数原型:void fnFu(int a, int b=6,char c = ?*?);下面调用不合法的是( C )。 A.fnFu(4) B. fnFu(4,7) C. fnFu( ) D. fnFu(1,1,'*')

二、填空题

1. 在函数定义前加上关键字“inline”,表示该函数被定义为( 内联函数 )。 2. 写出下列程序的输出结果是(30

25 )。

#include int a = 5; void fun( int b) { int a = 10; a += b; cout<

}

void main( )

{ int c = 20; fun(c); a += c; cout<

}

3.下面程序执行后的输出结果是( 12 )。

#include \#define MA(x) x*(x+1)void main(){ a=1,b=2;cout<

4. 以下程序运行结果是(10,64 )。

#include #define f(x) x*x*x void main() { int a = 3,s,t; s = f(a+1); t = f((a+1));

cout<

}

5. 写出下列程序的输出结果是( 6 )。

#include int fun(int n) { if(n==1)return 1;

else return fun(n-1)+1;

}

void main( ) {

int i,j=0; for(i=1;i<4;i++)

j += fun(i); int

cout<

三、编程题

1.编写一函数 , 求

x2 + 1 (x > 1)) f (x ) = x2 (-1 <= x <= 1) x2 – 1 (x < -1 )

的值 , 要求函数原型为 double fun(double x ); double fun(double x ) { double y; if(x>1.0)y = x*x+1.0; else if(x>= -1.0 && x<=1.0) y= x*x; else y =x*x-1; return y; }

2.编写一函数求 1~n 之和 , 要求函数原型为 long sum(int n ); long sum(int n ) {

long s=0L; int i; for(i=1;i<=n;i++) s += i; return s; }

3.用函数调用的方法,求f(k,n)=1k+2k+…+nk,其中k, n由键盘输入。 #include \long fnPower(int n,int k) { int i=1; long nk=1L; for(i=1;i<=k;i++) nk *= n; return nk; }

long fn(int k,int n) { long f=0L; for(int i=1;i<=n;i++) f += fnPower(i,k); return f; }

void main() { int n,k; cout<<\请输入n,k:\ cin>>n>>k; cout<

4.用递归算法求下列函数的值. 1 n = 0 p(n,x)= x n = 1

((2x-1)*p(n-1,x)*x – (n-1 )*p(n-2,x))/n n>1

注意选择好合适的参数类型和返回值类型。在main函数中,输入下列三组数据: (a) n = 0,x = 7; (b) n = 1,x = 2; (c) n = 3, x = 4,求出相应的函数值。 #include \long fnP(int n,int x) {

long s; if(n==0)s=1;

else if(n==1)s=x;

else s =((2*x-1)*fnP(n-1,x)*x - (n-1 )*fnP(n-2,x))/n ; return s; }

void main() {

int n,x;

cout<<\输入n,x:\ cin>>n>>x;

cout<

5. 设计一个重载函数,求n个数的最大值(n=2,3)。并编程调用验证。 #include \int fnMax(int x,int y) {

int max;

max = x>y?x:y; return max; }

int fnMax(int x,int y,int z) {

int max;

max = x>y?x:y; max = z>max?z:max;

return max; }

void main() {

cout<

6. 通过函数重载,利用冒泡排序算法编写函数fnSort(),完成任务int型数组、float型数组和字符数组的排序。 #include \void fnSort(int a[]); void fnSort(float a[]); void fnPrint(int a[]); void fnPrint(float a[]);

#define N 6 void main() { int a[N]={1,22,7,45,90,3};

float b[N]={1.6F,22.5F,7.2F,45.9F,90.0F,3.0F}; fnSort(a); fnPrint(a); fnSort(b); fnPrint(b); }

void fnSort(int a[]) { int k,i,t; for(k=1;k<=N-1;k++) //对数组进行冒泡排序 { for(i=N-1;i>=k;i--) if(a[i]

{ t=a[i]; a[i]=a[i-1]; a[i-1]=t; } //反序则交换 } }

void fnSort(float a[]) { int k,i; float t; for(k=1;k<=N-1;k++) //对数组进行冒泡排序 { for(i=N-1;i>=k;i--) if(a[i]

{ t=a[i]; a[i]=a[i-1]; a[i-1]=t; } //反序则交换 } }

搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新初中教育面向对象程序设计(C++)自我测试练习参考答案 (3)全文阅读和word下载服务。

面向对象程序设计(C++)自我测试练习参考答案 (3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/wenku/1104783.html(转载请注明文章来源)
热门推荐
Copyright © 2018-2022 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top