《C练习题函数11298.pdf》由会员分享,可在线阅读,更多相关《C练习题函数11298.pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 1.对于无返回值的函数,必须以作为类型修饰符。对于有返回值函数,要结束函数运行必须使用语句。2.以下函数定义中能正确编译的是。Adoublefun(intx,inty)doublez;z=x+y;returnz;Bdoublefun(intx,inty)z=x+y;returnz;Cdoublefun(intx,inty)intx,y;doublez;z=x+y;returnz;Ddoublefun(intx,y)intz=x+y;returnz;3.下列叙述中,不正确的是 A.一个函数中可以有多个return 语句 B.函数可以通过 return 语句返回数据 C.必须用一个独立的语句来调
2、用函数D.函数main也可以带有参数 4.已知函数f的定义是“intf(intn)n*=2;returnn+1;”,则执行“intm=5,n=3;m=f(n);”后m的值是,实参n的值是。5有关函数重载的正确说法是。A函数名不同,但参数的个数和类型相同 B函数名相同,但参数的个数不同或参数的类型不同 C函数名相同,参数的个数和类型也相同 D函数名相同,函数的返回值不同,而与函数的参数和类型无关 6.以下四组函数原型说明中,满足 C+函数重载规则的是。Afloatf(floatx);voidf(floaty);Bfloatf(floatx);voidf2(floatx,floaty);Cfloa
3、tf(floatx,inty);voidf(floaty);Dfloatf(floaty);floatf(floaty);7.有函数定义“voidf(inta,floatb)”,变量定义“inty,floatx;intk”,则以下对函数调用中正确的是 A.f(y,x);B.k=f(y,x);C.voidf(y,x);D.f(inty,floatx);8.下列函数原型说明语句中错误的是 A.voidp1(intx,inty)B.doublep1(intx,y);C.floatp1(x,y);D.floatp1(intx,inty);9.以下程序运行后输出的结果是_。#include intf1(
4、intx,inty)returnxyx:y;intf2(intx,inty)returnxyy:x;voidmain()inta=4,b=3,c=5,d=2,e,f,g;e=f2(f1(a,b),f1(c,d);f=f1(f2(a,b),f2(c,d);g=a+b+c+d-e-f;coute,f,g;A4,3,7B3,4,7 C5,2,7D2,5,7 10.下面程序的输出结果是_。#include intfun(intnum)intk=1;dok*=num%10;num/=10;while(num);return(k);voidmain()intn=26;coutfun(n);A0 B4 C1
5、2 D无限次循环 11以下程序运行后的输出结果是_。#include voidswap(intx,inty)intt;t=x;x=y;y=t;coutxtyt;voidmain()inta=3,b=4;swap(a,b);coutatb;12.阅读以下程序:#include intf(void)/行 A1/行 A2 staticinta,b=10,c=1;/行 A3 a+=b;b+=c;returnc=a+b;/行 A4/行 A5 voidmain(void)/行 B1/行 B2 coutf()endl;/行 B3 coutf()endl;/行 B4/行 B5 请回答以下问题:以上程序中静态变
6、量有;初值分别是,所有静态变量的作用域为。main 函数中两次调用 f 函数的语句分别是行和行。第一次调用 f 函数结束后变量 a 的值是,b 的值是,c 的值是。第二次调用 f 函数结束后变量 a 的值是,b 的值是,c 的值是。A3 行语句在整个程序的执行过程中共被执行了次;程序运行后输出的第一行到第二行分别是_、_。13.阅读以下程序:#include intx=100;/行 A1 voidmain()/行 A2/行 A3 intx=200;/行 A4 x+=:x;/行 A5 /行 A6 intx=500;/行 A7:x+=x;/行 A8 /行 A9 coutxendl;/行 A10 c
7、out:xendl;/行 A11/行 A12 请回答以下问题:以上程序中全局变量是,其作用域是。A4 行的变量 x 和 A1 行的变量 x 在内存中是否表示同一个单元?。A5 行符号”:”称为运算符,表示。A7 行的变量 x 和 A4、A1 行的变量 x 在内存中是否表示同一个单元?。A7 行的变量所占的内存空间何时被释放?。A10 行执行后将输出。A11 行执行后将输出。14以下程序输出结果的第一行是,第二行是。#include intk;voidmain(void)k=10;for(inti=0;i5;i+)intk;k=i+1;coutk;:k+;coutnkn;15以下程序输出的第一行
8、是,第二行是。#include intf(intx)staticintu=1;x+=x;returnu*=x;voidmain(void)intx=10;coutf(x)n;coutf(x)n;16.以下程序输出的第一行是,第二行是。#include inta=15;voidmain()inta=20,b=40;inta=0,b=0;for(inti=1;i3;i+)a+=i;b+=a;coutab:aendl;coutabendl;17下列表示引用的方法中,_是正确的。已知:intm=10;Aint&x=m;Bint&y=10;Cint&z;Dfloat&t=&m;18有以下程序:#incl
9、ude voidf(inta,int&b)intt=a;a=b;b=t;voidmain(void)intx=10,y=20;coutxtyn;f(x,y);/行 A coutxtyn;请回答问题:函数 f 的功能:_。函数 f 的形参 a 的传递方式为:_,根据该传递方式的特点,当执行完行 A后,实参 x 的值会不会改变?_。函数 f 的形参 b 的传递方式为:_,根据该传递方式的特点,当执行完行 A后,实参 y 的值会不会改变?_。行 A 可不可以写成 f(x,&y);?_,为什么?_。程序的输出结果:_,并上机验证。19以下程序输出的第一行是_,第二行是_,第三行是_。#include voidfn(int&x)staticinty=1;x+=y;y+=x;coutx,yn;voidmain()inty=1;fn(y);fn(y);fn(y);