C++练习第3章函数.docx
- 文档编号:6337246
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:28
- 大小:41.64KB
C++练习第3章函数.docx
《C++练习第3章函数.docx》由会员分享,可在线阅读,更多相关《C++练习第3章函数.docx(28页珍藏版)》请在冰豆网上搜索。
C++练习第3章函数
一,单选题
1.下列说法不正确的是____。
A 函数必须有返回值
B 函数的返回值是通过return语句返回到主调函数的。
C return语句后的括号可要可不要
D 有函数值的函数,它返回的函数值的类型是确定的
参考答案
A
2.有如下程序:
#include
usingnamespacestd;
intmain()
{
voidfunction(doubleval);
doubleval;
function(val);
cout< return0; } voidfunction(doubleval) { val=3; } 编译运行该程序将出现的情况是()。 A编译出错,无法运行 B输出: 3 C输出: 3.0 D输出一个不确定的数 参考答案 D 3.若各选项中所用变量已正确定义,函数fun中通过return语句返回一个函数值,以下选项中错误的程序是: A main() {……x=fun(2,10);……} floatfun(inta,intb) {……} Bfloatfun(inta,intb) {……} main() {……x=fun(i,j);……} Cfloatfun(int,int); main() {……x=fun(2,10);……} floatfun(inta,intb) {……} Dmain() { floatfun(inti,intj); ……x=fun(i,j);…… } floatfun(inta,intb) {……} 参考答案 A 4.在函数中如果不说明变量的存储类型,则默认的存储类型是__________。 Aauto Bstatic Cextern Dregister 参考答案 A 5.使用sin(x),必须包括的头文件为_______。 Aiostream.h Bmath.h Cstdlib.h Dstring.h 参考答案 B 6.有以下程序: #include charfun(charx,chary) { if(x returny; } voidmain() { inta='9',b='8',c='7'; cout< } 程序的执行结果是________。 A函数调用出错 B8 C9 D7 参考答案 D 7.变量生存期是指_____________。 A变量定义 B程序的运行期间 C变量在内存中分配存储单元到被释放期间 D可执行代码的生存期 参考答案 C 8.函数的返回值的类型由_________决定。 A调用该函数的主调函数类型 Breturn语句中的表达式类型 C定义函数时所指定的返回值类型 D调用函数时临时决定 参考答案 C 9.以下程序的输出结果是__________。 #include voidmain() {intx=1,y=3; cout< {intx=0;x+=y*2; cout< cout< } A1,6,3,1,3 B1,6,3,6,3 C1,6,3,2,3 D1,7,3,2,3 参考答案 C 11.下列说法不正确的是____。 A函数必须有返回值 B函数的返回值是通过return语句返回到主调函数的。 Creturn语句后的括号可要可不要 D有函数值的函数,它返回的函数值的类型是确定的 参考答案 A 12. 二.填空题 1.阅读程序,写出运行结果。 #include inta=5; voidfun(intb) { staticinta=10; a+=b++; cout< } voidmain() { intc=20; fun(c); a+=c++; cout< } 参考答案 3025 2.变量一般需要先赋初值再参与运算,__1__变量没有赋初值时,将由系统自动置为0。 参考答案 1: 静态 3.函数内定义的动态变量在__1__时才生成。 参考答案 1: 函数调用或调用 4.从用户使用的角度看,函数可以分为__1__和__2__。 参考答案 1: 系统函数或库函数或标准函数 2: 用户自定义函数或自定义函数或用户定义函数 5.若有宏定义: #defineF(a,b)a-b #defineG(a,b)(a+b) 程序执行语句中有如下语句: a=6;b=4; cout< 则输出的3个数据按次序分别是: __1__、 __2__、 __3__。 参考答案 1: -22 2: 100 3: -3 6.题自定义函数f()的功能是: 对给定的参数N,求s=1*1+2*2+…+N*N.请补充程序中空格处所缺的语句。 (注: 严格按空格的顺序号依次书写每空的答案)。 #include usingnamespacestd; longf(intN) { longs; inti;__1__; for(i=1;i<=N;i++) s=__2__; returns; } 参考答案 1: s=0 2: s+i*i 7.完成以下代码,实现求数列: 前n项之和,n由主函数中给定。 #include doublesum_s(intn); voidmain() { doubles; intn; cout<<"pleaseinputintegern: "; cin>>n; s=sum_s(n); cout<<"s="< } //sum_s函数求数列的前n项之和 doublesum_s(intn) { inti; doublet=1,s=1; for(i=1;i {__1__;//递推关系t=(t+1)/t s=s+t;} return(s); } 若键盘输入n值为5,则前n项之和为__2__。 参考答案 1: t=(t+1)/t 2: s=7.76667 8.若一自然数等于其所有真因子(能够整除该数,且小于该数的正整数)之和,则称该自然数为完全数。 例如,6的真因子有1,2,3,且,6=1+2+3;因此6为完全数。 完成以下代码,实现求[2,1000]之内的完全数个数和最大的完全数,其中,变量n用于存放完全数个数,变量max用于存放最大完全数。 #include intis_complet(intx);//函数is_complet(x)判断x是否为完全数,若"是",则返回1 voidmain() { inti,n,max; n=0; for(i=2;i<=1000;i++) if(is_complet(i)==1) {n=n+1; __1__;} cout<<"n="< cout<<"max="< } intis_complet(intx) { intn,s=1; for(n=2;n if(x%n==0)__2__; if(x==s)return1; elsereturn0; } 运行该程序,最大的完全数是: __3__。 参考答案 1: max=i 2: s=s+n 3: 496 9.完成以下程序,实现将十进制数1234转换为八进制数: #include voidmain() { __1__; f(1234); } voidf(intn) { if(n>=8) f(__2__); cout< } 参考答案 1: voidf(int)或voidf(intn)或voidf(intn);或voidf(int); 2: n/8或(n-n%8)/8或(int)(n/8) 10.若有函数定义: floatf(intx,chary){…}。 将该函数声明为内置函数的语句为__1__。 参考答案 1: inlinefloatf(int,char);或inlinefloatf(int,char)或inlinefloatf(intx,chary);或inlinefloatf(intx,chary) 11. 三.问答题 1.阅读程序,写出运行结果。 #include intfunc(unsignedcharx) { intcountx=0; while(x) { countx++; x=x&(x-1); } returncountx; } voidmain() { cout< } 参考答案 8 2.写出以下程序的运行结果。 #include intfun(inta) { intb=0; staticintc=3; b++;c++; return(a+b+c); } main() { inti,a=5; for(i=0;i<3;i++) cout< } 参考答案 010111212 3.阅读程序,写出运行结果。 #include inta=5; voidfun(intb) { staticinta=10; a+=b++; cout< } voidmain() { intc=20; fun(c); a+=c++; cout< } 参考答案 3025 4.阅读程序,写出运行结果。 #include inta=5; voidfun(intb) { staticinta=10; a+=b++;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 练习 函数
![提示](https://static.bdocx.com/images/bang_tan.gif)