2021年度C面向对象程序设计复习题集_第1页
2021年度C面向对象程序设计复习题集_第2页
2021年度C面向对象程序设计复习题集_第3页
2021年度C面向对象程序设计复习题集_第4页
免费预览已结束,剩余107页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C++面向对象程序设计复习题集C++面向对象程序设计复习题集ー、单项选取题C++源程序文献默认扩展名为(A)〇A.cpp B.exe C.objD.lik.由C++源程序文献编译而成目的文献默认扩展名为(C)〇A.cpp B.exe C.objD.lik.由C++目的文献连接而成可执行文献默认扩展名为(B)〇A.cpp B.exe C.objD.lik4.C++程序从上机到得到成果几种操作环节依次是(B)。A.编译、编辑、连接、运营B.编辑、编译、连接、运营C.编译、运营、编辑、连接D.编辑、运营、编辑、连接.如下标记符中不全是保存字是(B)〇caseforintdefaultthenwhileboolclasslonggotoreturnchar.能作为C++程序基本单位是(C)〇A.字符B.语句 C.函数D,源程序文献.程序中主函数名字为(A)〇A.mainB.MAINC.MainD.任意标记符.C++程序基本模块为(D)。A,表达式B.标记符C.语句D,函数.可用作C++语言顾客标记符ー组标记符是(B)〇void define +W0RDa3_b3 _123YNfor -abc Case2aDOsizeof.存储如下数据,占用存储字节最多是(D)〇A.0B,’〇'C."0"D.

0.0.程序运营中需要从键盘上输入多于ー种数据时,各数据之间应使用(D)符号作为分隔符。A,空格或逗号 B,逗号或回车C,逗号或分号 D,空格或回车.设“inta=12;”,则执行完语句‘'a+=a*a;"后,a值是(C)〇A.12B.144C.156D.288.假设在程序中a、b、c均被定义成整型,所赋值都不不大于!,则下列能对的表达代数式;表abc达式是(D )〇A.1.0/a*b*cB.1/(a*b*c)C.1/a/b/(float)cD.1.0/a/b/c14.设“inta=15,b=26ド,则”coutくく(a,b);”输出成果是(D)〇A.15B.26,15C.15,26D.26设x是ー种bool型逻辑量,y值为10,则表达式x表达式x&&y值为(C)。A.1B.0C.与x值相似D.与x值相反x>0&&xく=10相反表达式为(A)〇A. x<=0 I I x>10 B. x<=0&&x>10C. x<=0 I I x<=10 D. x>0&&x>10x>0IIy==5相反表达式为(B)〇A. x<=0 || y!=5 B. x<=0&&y!=5C. x>0|| y!=5 D. x>0&&y==5.设x和y均为bool量,则x&&y为真条件是(A )〇A.它们均为真 B.其中一种为真C.它们均为假 D,其中一种为假.设x和y均为bool量,则x||y为假条件是(C)。A.它们均为真 B,其中一种为真C.它们均为假 D,其中一种为假.字符串〃a+b=12\n〃长度为(B)〇A.6B.7C.8D.9.假定下列x和y均为int型变量,则不对的赋值为(B)〇A.x+=y++ B.x++=y++ C.x=++yD.++x=++y.下列符号常量定义中,错误定义是(C)〇A.constM=10; B.constintM=20;C.constcharch;D.constboolmark=true;.循环语句ufor(inti=0;i<n;i++)coutくくi*iくぐ,;”中循环体执行次数为(C)〇A.1B.n-lC.nD.n+1.在下面循环语句中循环体执行次数为(B)〇for(inti=0;i<n;i++)if(i>n/2)break;A.n/2 B.n/2+1 C.n/2-1D.n-l.在下面循环语句中内层循环体S语句执行总次数为(D)〇for(inti=0;i<n;i++)for(intj=i;j<n;j++)S;A.n2B.(n+l)/2C.n(n-l)/2D.n(n+l)/2.在下面循环语句中循环体执行次数为(C)〇inti=0,s=0;while(s<20){i++;s+=i;}A.4B.5C.6D.7.在下面循环语句中循环体执行次数为(A)〇inti=0;doi++;while(i*i<10);A.4B.3C.5D.2.当解决特定问题时循环次数已知时,普通采用(A)来解决。A. for循环B. while 循环 C.do循环 D.switch语句.循环体至少被执行一次语句为(C)。A. for循环B. while 循环 C.do循环 D.任一种循环.switch语句可以改写为(B)语句。A.forB.ifC.doD.while.do语句可以改写为(D)语句。A.复合B.ifC.switch

D.while32.在下面一维数组定义中,哪ー种有语法错误。(C)A.intaロ={1,2,3}; B.inta[10]={0};C.inta[]; D.inta[5];33,在下面字符数组定义中,哪ー种有语法错误。(D)。A.chara[20]二〃abcdefg〃; B.charaロニ〃x+y=55.〃;C.chara[15]; D.chara[10]=z5f;.在下面二维数组定义中,对的是(C)〇A.inta[5]ロ; B.intaロ[5];C.intaロ[3]二{{1,3,5},{2}};D.intaロ(10);.假定一种二维数组定义语句为“inta[3][4]二{{3,4},{2,8,6}};”,则元素值为(C)〇A.2B.4A.2B.4C.6D.8.假定一种二维数组定义语句为“inta[3][4]={{3,4},{2,8,6}};w,则元素 值为(A)〇A.0B.4C.8D.637,若定义了函数double*function(),则函数function返回值为(B)。A.实数型B.实数地址C.指向函数指针D.函数地址.如下说法中对的是(B)〇C++程序总是从第一种定义函数开始执行C++程序总是从main函数开始执行C++函数必要有返回值,否则不能使用函数C++程序中有调用关系所有函数必要放在同一种程序文献中.如下论述中不对的是(C)〇A.在ー种函数中,可以有多条return语句B.函数定义不能嵌套,但函数调用可以嵌C.函数必要有返回值D.不同函数中可以使用相似名字变量.函数重载是指(A)〇A.两个或两个以上函数取相似函数名,但形参个数或类型不同B.两个以上函数取相似名字和具备相似参数个数,但形参类型可以不同C.两个以上函数名字不同,但形参个数或类型相似D.两个以上函数取相似函数名,并且函数返回类型相似.如下关于函数模板论述对的是(C)〇A.函数模板也是ー种详细类型函数B.函数模板类型参数与函数参数是同一种概念C.通过使用不同类型参数,函数模板可以生成不同类型函数D.用函数模板定义函数没有类型.下列(C)调用方式是引用调用。A,形参和实参都是变量 B,形参是指针,实参是地址值C,形参是引用,实参是变量 D.形参是变量,实参是地址值.为了提高程序运营速度,可将不太复杂功能用函数实现,此函数应选取(A)〇A.内联函数B.重载函数C,递归函数D.函数模板.函数原型语句对的是(B)〇A.intFunction(voida);B.voidFunction(int);C.intFunction(a); D.voidint(doublea);.C++中函数返回值类型是由(B)决定。A.return语句中表达式类型 B.该函数定义时类型C.调用函数时调用语句 D.系统依照成果46.如下函数返回成果是(A)〇intfunction(char*x){char*p=x;while(*p++) ;return(p-x-l);)A.求字符串长度 B.将字符串x连接到字符串p背面C,将字符串x复制到字符串p中D.将字符串x反向存储. 函数调用func((expl,exp2),(exp3,exp4,exp5))中所含实参个数为(B)个。A.1B.2C.4D.5.设有如下函数定义intf(char*s){char*p=s;while(*p!=,\0,)p++;return(p-s);)在主函数中用coutくくf(“good”)调用上述函数,则输出成果为(B)。A.3B.4C.5D.6.如下对的函数原型语句是(C)〇A.doublefun(intx,inty)B.doublefun(intx;inty)doublefun(int,int);doublefun(intx,y);50,如下对的说法是(B)〇A.顾客调用原则库函数前,必要重新定义B.顾客可以重新定义原则库函数,若如此,该函数将失去原有含义C.系统不容许顾客重新定义原则库函数D.顾客调用原则库函数前,不必使用预编译命令将该函数所在文献涉及到顾客源文献中51.函数调用不可以(D)〇A.出当前ー种表达式中B.出当前执行语句中C.作为ー种函数实参D.作为ー种函数形参52,如下对的描述是(B)〇A.函数定义可以嵌套,函数调用不可以嵌套B.函数定义不可以嵌套,函数调用可以嵌套C.函数定义和函数调用均可以嵌套D.函数定义和函数调用均不可以嵌套.若用数组名作为函数调用实参,传递给形参是(A)〇A.数组首地址 B.数组中第一种元素值C.数组所有元素值 D,数组元素个数.如下错误描述是(D)〇A,被调用函数中可以不用return语句B.被调用函数中可以用各种return语句C.被调用函数中,如果有返回值,就一定要有return语句D,被调用函数中,ー种return语句可返回各种值给调用函数55,如下对的描述是(C)〇A.不容许设立参数默认值B.设立参数默认值只能在定义函数时设立C.设立参数默认值时,应当设立右边参数D.设立参数默认值时,应当所有参数都设、ー.采用重载函数目是(D)〇A.实现共享B,减少空间C,提高速度 D,使用以便,提高可读性.将两个字符串连接起来构成一种字符串时,选用(C)函数。A.strlen() B.strcap()C.strcat()D.strcmp().如下论述中对的是(B)〇A.使用#define可觉得常量定义ー种名字,该名字在程序中可以再赋此外值B.使用const定义常量名有类型之分,其值在程序运营时是不可变化C.在程序中使用内联函数使程序可读性变差D.在定义函数时可以在形参表任何位置给出缺省形参值.下面标记符中,(C)是文献级作用域。A.函数形参B.语句标号C.外部静态类标记符D.自动类标记符.如下论述不对的是(D)。A,宏替代不占用运营时间B.宏名无类型C,宏替代只是字符替代D,宏名必要用大写字母表达61.C++语言编译系统对宏命令解决是(D)〇A,在程序运营时进行B.在程序连接时进行C,和C++程序其他语句同步进行编译D.在对源程序中其他成分正式编译之迈进行.当#include背面文献名用双引号括起来时,寻找被包括文献方式是(B)。A,直接按系统设定原则方式搜索目录B.先在源程序所在目录搜索,再按系统设定原则方式捜索目录C.仅仅搜索源程序所在目录D.搜索当前逻辑盘上所有目录.当#include背面文献名用尖括号括起来时,寻找被包括文献方式是(A)〇A,直接按系统设定原则方式搜索目录B.先在源程序所在目录捜索,再按系统设定原则方式搜索目录C.仅仅搜索源程序所在目录D.搜索当前逻辑盘上所有目录64.在下面存储类中,(C)对象可见性与生存期不一致。A.外部类 B.自动类C.内部静态类 D.寄存器类.在下面存储类中,(A)对象不是局部变量。A.外部静态类B.自动类C.函数形参 D.寄存器类.关于局部变量,下面说法对的是(C )〇A.定义该变量程序文献中函数都可以访问B.定义该变量函数中定义处如下任何语句都可以访问C.定义该变量复合语句中定义处如下任何语句都可以访问D.定义该变量函数中定义处以上任何语句都可以访问.文献包括命令中被包括文献扩展名(C)〇A.必要是.h B.不能是.hC.可以是,h或.cpp D,必要是.cpp.预解决命令在程序中都是以(B)符号开头。A.*B.#C.&D.@.设array为一种数组,则表达式sizeof(array)/sizeof(array[0])成果为(B)〇array数组首地址array数组中元素个数array数组中每个元素所占字节数array数组占总字节数.用new运算符创立一种含10个元素一维整型数组对的语句是(C)〇A.int*p=newa[10];B.int*p=newfloat[10];C.int*p=newint[10];D.int*p=newint[10]={l,2,3,4,5}.下列给字符数组赋初值时,对的是(A)。A.charsiロゴ'abcdef”; B.chars2[4]="abcd";C.chars3[2][3]={66abc","xyz");D.chars4[4][]={6a\9x5,5s\9V};.设有定义“staticintdata[5][6];设该数组在静态存储区中起始地址为十进制100,若每个int型数占4个字节,则数组元素data[2][3]地址为(D)〇A.115 B.124 C.130D.16073.假定变量m定义为“intm=7「,则定义变量p对的语句为(B)〇A.intp=&m; B.int*p=&m;int&p=*m;D.int*p=m;.假定k是ー种double类型变量,则关于变量P正拟定义语句为(D)。A.doublep=&k; B.int*p=&k;C.double&p二*k; D.char*p二"Thankyou!”;.变量s定义为“char*s二”Helloworld!”;”,要使变量P指向s所指向同一种字符串,则应选用(A)〇A.char*p二s; B.char*p二&s; C.char*p^*s;D.char*p;p二&s;.关于void指针,下列说法对的是(C)〇A.void指针就是未指向任何数据指针B.void指针就是已定义而未初始化指针C•指向任何类型数据指针可直接赋值给ー种void指针void指针值可直接赋给ー种非void指针.假定一条定义语句为“inta口〇],x,*pa=a;",若要把数组a中下标为3元素值赋给x,则不对的语句为(D)〇A.x=pa[3];B.x=*(a+3);C.x=a[3];D.x二・pa+3;.假定有定义“intb[10];int*pb;”,则不对的赋值语句为(D)〇A.pb=b;B.pb=&b[0];C.*pb=newint;D.pb=b[5];.假定p是具备double类型指针变量,则表达式++P使P值(以字节为单位)增长(C)。A.1 B.4 C.sizeof(double) D.sizeof(p).假定p指向字符串为〃string”,则coutくくp+3输出成果为(C)〇A.stringB.ring C.ingD.i.假定p指向字符串为〃string”,若要输出这个字符串地址值,则使用(D)。A.cout«*p;B.cout«p;C.cout«&p;D.cout«(void*)p;.定义p并使p指向动态空间中包括30个整数数组所使用定义语句为(A)〇A.int*p=newint[30]; B.int*p=newint(30);C.int*p=new[30]; D.*p=newint[30];83.假定p是具备int**类型指针变量,则给p赋值对的语句为(B)。A.p=newint;B.p=newint*;C.p二newint**;D.p=newint[10];84,要使语句"p二newint[10][20];“可以正常执行,p应被事先定义为(D)〇A.int*p;B.int**p;C.int*p[20];D.int(*p)[20];85.假定有“structBOOK{chartitle[40];floatprice;};BOOK*book=newBOOK;”,则对的语句为(A)oA.strcpy(book->title,“WangTao”);B.strcpy(book.title,"WangTao”);C.strcpy(*book.title,"WangTao");D.strcpy((*book)->title,"WangTao");86.假定有ustructBOOK{chartitle[40];floatprice;};BOOK*book;",则不对的语句为(A)〇A.BOOK*x=newbook; B.BOOKx={"C++Programming",27.0};C.BOOK*x=newBOOK; D.BOOK*x=book;87.假定有“structBOOK{chartitle[40];floatprice;}book; 则对的语句为(B)〇A.BOOK&x=&book; B.BOOK&x=book;C.BOOK&x二newBOOK; D.BOOK&x=B00K;88.下列对引用陈述中不对的是(C)〇A.每ー种引用都是其所引用对象别名,因而必要初始化B,形式上针对引用操作事实上作用于它所引用对象C.一旦定义了引用,一切针对其所引用对象操作只能通过该引用间接进行D.不需要单独为引用分派存储空间89.假定变量a和pa定义为“doublea[10],*pa=a;",要将12.35赋值给a中下标为5元素,不对的语句是(D)〇A.pa[5]=12.35;B.a[5]=12,35;C. *(pa+5)=12.35; D.*(a[0]+5)=12.35;90.假定变量b和pb定义为“intb[10],*pb=b;",要将24赋值给b[l]元素中,不对的语句是(C)〇A.*(pb+l)=24;B.*(b+l)=24;C.*++b=24;D.*++pb=24;91.假定指针变量p定义为“int*p二newint(lOO);",要释放p所指向动态内存,应使用语句(A)〇A.deletep;B.delete*p;C.delete&p;D.delete[]p;.假定指针变量p定义为“int*p=newint[30];”,要释放p所指向动态内存,应使用语句(D)〇A.deletep;B.delete*p;C.delete&p;D.delete[]p;.假定变量x定义为“intx=5了’,要使rx成为x引用(别名),rx应定义为(D)〇A.intrx=x;B.intrx=&x;C.int*rx=&x;D.int&rx=x;.关于消息,下列说法中不对的是(B)〇A.发送消息对象祈求服务,接受消息对象提供服务B.消息发送者必要理解消息接受者如何相应消息C.在C++中,消息发送详细体现为对接受消息对象某个函数调用D.每个对象只能接受某些特定格式消息.关于封装,下列说法中不对的是(D)〇A.通过封装,对象所有属性和操作结合在ー起,形成一种整体B,通过封装,ー种对象实现细节被尽量地隐藏起来(不可见)C,通过封装,每个对象都成为相对独立实体D,通过封装,对象属性都是不可见.面向对象办法多态性是指(C)〇ー种类可以派生出各种特殊类ー种对象在不同运营环境中可以有不同变体C.针对ー消息,不同对象可以以适合自身方式加以响应D.ー种对象可以是由各种其她对象组合而成.软件产品在需求发生变化、运营环境发生变化或发现软件产品自身错误或局限性时进行相应软件更新难易限度叫做软件(A)〇A.可维护性 B.可复用性C.兼容性 D.对的性.软件产品可被所有或某些地再用于新应用能力叫做软件(B)〇A.可维护性B.可复用性C.兼容性D.对的性99.软件产品与其她软件产品组合成一种整体难易限度叫做软件(C)〇A.可维护性B.可复用性C.兼容性D.对的性100.软件产品精确执行软件需求规格阐明书中所规定任务能力叫做软件(D)〇A.可维护性B.可复用性C.兼容性D.对的性二、填空题.C++语言是在_Cー语言基本上发展起来。.C++语言编译单位是扩展名为.cpp程序文献。.行尾使用注释开始标记符为ー//ー〇.多行注释开始标记符和结束标记符分别为_/* 和*/〇.用于输出表达式值原则输出流对象是_cout 〇.用于从键盘上为变量输入值原则输入流对象是cin〇.ー种完整程序中必要有一种名为_main函数。.ー种函数函数体就是一条—复合语句。.当执行cin语句时,从键盘上输入每个数据后必要接着输入一种ー空白符,然后オ干继续输入下ー种数据。.在C++程序中包括一种头文献或程序文献预编译命令为ー^include〇.程序中预解决命令是指以—#一字符开头命令。.一条表达式语句必要以一分号一作为结束符。.在#include命令中所包括头文献,可以是系统定义头文献,也可以是ー顾客(或编程者)—定义头文献。.使用#include命令可以包括ー种头文献,也可以包括ー种ー程序一文献。.ー种函数定义由一函数头ー和ー函数体两某些构成。.若一种函数定义处在调用它函数之前,则在程序开始可以省去该函数一原型(或声明)ー语句。.C++头文献和源程序文献扩展名分别为.h和.cpp〇.程序文献编译错误分为ー警告(warning)和一致命(error)两类。.当使用—void一保存字作为函数类型时,该函数不返回任何值。.当函数参数表用_void保存字表达时,则表达该参数表为空。.从一条函数原型语句“intfunl(void);"可知,该函数返回类型为_int—,该函数带有_〇ー个参数。.当执行cout语句输出endl数据项时,将使C++显示输出屏幕上光标从当前位置移动到下一行一开始位置。.假定x=5,y=6,则表达式x++*++y值为35〇.假定x=5,y=6,则表达式x—*—y值为〇.假定x=5,y=6,则执行表达式y・=x++计算后,x和y值分别为ー6和30〇.假定x=5,y=6»则执行表达式y+=x-ー计算后,x和y值分别为ー4和11〇.C++常数0x145相应十进制值为325〇.C++常数0345相应十进制值为2〇十进制常数245相应十六进制C++表达为0xf5〇十进制常数245相应ハ进制C++表达为0365〇signedchar类型值域范畴是ー-128至ー+127之间整数。int和float类型数据分别占用ー4和一4ー个字节。float和double类型数据分别占用4和8个字节。boo!和char类型数据分别占用ー1和1ー个字节。unsignedshortint和int类型长度分别为2和4〇字符串〃This:sabook.\n〃长度为15〇37.字符串〃、nThis\,sapen\n\n〃长度为15〇38.在C++中存储字符串〃abcdef〃至少需要7个字节。39.在C++中存储字符串〃a+b二c〃至少需要6个字节。40.假定x和y为整型,其值分别为16和5,则x%y和x/y值分别为1和3〇41.假定x和y为整型,其值分别为16和5,则x/y和double(x)/y值分别为3和3.2〇.假定x是ー种逻辑量,则x&&true值为x〇.假定x是ー种逻辑量,则x||true值为true(或1)〇.假定x是ー种逻辑量,则x&&false值为false(或0)〇.假定x是ー种逻辑量,则x||false值为x〇.假定x是ー种逻辑量,则!x||false值为!x〇.假定x是ー种逻辑量,则x&&!x值为false(或0)〇.假定x是ー种逻辑量,则x||!x值为ーtrue(或1)〇.数学算式岁C++表达式为(x+y)/(2*x*y)〇.数学算式gC++表达式为x+y3*x*y/(x+y)〇.数学算式「丄おC++表达式为ax+by1/(a*x*x+b*y*y)〇.设enumPrintstatus{ready,busy,error);则coutくくbusy输出成果是」〇. 设 enumPrintstatus{ready=2,busy,error}?贝リcout«busy输出成果是ー3ー〇.常数-4.205和6.7E-9分别具备4和2位有效数字。.枚举类型中每个枚举值都是ー种枚举常量,它值为ー种一整数〇.常数100和3.62数据类型分别为int和doub1e〇.若x=5,y=10,则计算y・二++x表达式后,x和y值分别为ー6ー和一60ー〇.假定x和ch分别为int型和char型,则sizeof(x)和sizeof(ch)值分别为4和_1 0.假定x=10,则表达式x<=10?20:30值为_20 〇.表达式sqrt(81)和pow(6,3)值分别为—9一和一216〇.含随机函数表达式rand()%20值在一〇ー至ー9区间内。.在switch语句中,每个语句标号所含核心字case背面表达式必要是整型ー常量〇.在if语句中,每个else核心字与它前面同层次并且最接近一ifー核心字相配套。.作为语句标号使用C++保存字case和default只能用于switch语句定义体中。.执行switch语句时,在进行作为条件表达式求值后,将从某个匹配标号位置起向下执行,当遇到下ー种标号位置时ー不断止执行。.若while循环“头”为“while(i++く=10)”,并且i初值为0,同步在循环体中不会修改i值,则循环体将被重复执行ー11—次后正常结束。.若do循环“尾”为“while(++iく10)”,并且i初值为0,同步在循环体中不会修改I值,则循环体将被重复执行ー10一次后正常结束。.当在程序中执行到break语句时,将结束本层循环类语句或switch语句执行。.当在程序中执行到continut语句时,将结束所在循环语句中循环体ー次执行。.在程序中执行到returnー语句时,将结束所在函数执行过程,返回到调用该函数位置。.在程序执行完一主(或main)ー函数后,将结束整个程序执行过程,返回到操作系统下C++集成开发窗口。.元素类型为int数组武10]共占用_40字节存储空间。.元素类型为double二维数组a[4][6]共占用」92—字节存储空间。.元素类型为char二维数组a[10][30]共占用—300一字节存储空间。.存储字符,a,和字符串〃a〃分别需要占用—1一和一2个字节。.空串长度为—0—,存储它需要占用—1ー个字节。.字符串〃ゝ,a\,xy=4\n〃长度为_8〇.字符串〃a:\\xxk\'数据〃长度为」1ー〇.用于存储ー种长度为n字符串字符数组长度至少为ーn+1ー〇.若a是ー种字符数组,则从键盘上向该数组输入一种字符串表达式为cin»a〇.若a是ー种字符数组,则向屏幕输出a中所存字符串表达式为cout«a〇.一种二维字符数组a[10][20]可以存储10ー个字符串,每个字符串长度至多为19〇.对一种二维字符数组a进行初始化数据为{〃123〃,“456〃,“789〃},则aロ]元素相应字符串为〃456〃〇.strlen("apple")值为_5,strcmp(〃aJ〃A〃)值为1〇.若需要把一种字符串〃aaa〃赋值到字符数组a中,则需要执行一strcpy(或strcpy(a,〃aaa〃))函数调用来实现。.假定对二维数组a[3][4]进行初始化数据为{{3,5,6},{2,8},{7}},则a⑴[1]和a⑵⑶分别被初始化为8一和—0〇.在C++语言中,ー种函数由函数头和ー函数体构成。.重载ー种函数条件是:该函数必要在参数个数或参数一类型ー上与其他同名函数有所不同。.如果ー种函数只容许同一文献中函数调用,则应在该函数定义前加上—staticC++保存字。.若“doublex=100;”是文献Fl.CPP中一种全局变量定义语句,若文献F2.CPP中某个函数需要访问此x,则应在文献F2.CPP中添加对x声明语句为ーexterndouble.定义ー种函数模板要用到第一种修饰符是temp1ate〇.在函数模板参数中,用class修饰参数称为一虚拟类型(或类型)ー参数。.如果ー种函数直接或间接地调用自身,这样调用称为ー递归调用。.已知intcubin(intn){returnn*n*n;}和doublecubin(doublen){returnn*n*n;}是ー种函数模板两个实例,假定类型参数用T表达,则该函数模板定义是template<classT>Tcubin(Tn){returnn*n*n;〇.对于无返回值函数,定义函数时要用VOid修饰函数类型。.如果ー种函数定义使用了static修饰,则该函数不容许被其他文献中函数调用。.如果ー种函数中有各种默认参数,则默认参数必要所有处在形参表—右边或(背面)ー某些。.定义外部变量时,不用存储类阐明符—extern,而声明外部变量时用它。.调用系统函数时,要先使用#include命令包括该系统函数原型语句所在—头文献一〇.函数形参作用域是该函数函数体.C++提供预解决命令有宏定义命令,条件编译命令和文献包括命令〇.程序编译是以一文献一为单位进行。.C++程序运营时内存空间可以提成全局数据区,堆区,栈区和一代码区(程序区)〇.全局变量和静态局部变量具备静态生存期,存储在内存ー全局数据区中。.局部变量具备局部生存期,存储在内存ー栈区中。.若二维数组a有m歹!),设a[〇][〇]位于数组第一种位置上,则计算任一元素a[i][j]在数组中位置序号公式为I*m+j+l〇107,若有定义udoublea[3][5];则a数组中行下标和列下标最大值分别为—2和一4〇.若有定义“structAA{inta;charb;doublec;}x;",则x占用空间大小为_13 字节。.当定义ー种构造体变量时,系统分派给该变量内存大小等于各成员所需内存大小ー总和〇.ー种指针类型对象占用内存ー4ー个字节存储空间。.ー种指针指向ー种数据对象,它保存着该数据对象一地址,若数据对象为DataType类型,则相应指针类型为_DataType* 〇.若要把ー种整型指针p转换为字符指针,则采用强制转换表达式为ー(char*)pー〇.假定一种数据对象为int・类型,则指向该对象指针类型为ーint**〇.假定p是ー种指向整数对象指针,则用_*p表达该整数对象,用&p表达指针变量p地址。.假定p是ー种指针,则・p++运算ー方面访问*p,然后使 p值增1。.假定p是ー种指针,则0^)++运算一方面访问ー*P,然后使ー*p值增1。.假定p所指对象值为25,p+1所指对象值为42,则・p++值为ー25〇.假定p所指对象值为25,p+1所指对象值为42,则・++p值为42〇.假定p所指对象值为25,p+1所指对象值为42,则执行(*p)++运算后,p所指对象值为ー26〇.假定p所指对象值为25,p+1所指对象值为42,则执行・p++运算后,p所指对象值为42〇.假定对数组a口进行初始化数据为(2,7,9,6,5,7,10},则a[2]和a[5]分别被初始化为9和7〇三、程序填空,对程序、函数或类中划有横线位置,依照题意按标号把适当内容填写到程序下面相应标号背面。1、打印出100到200之间所有素数(即除1和它自身再没有其她约数数)。#include<iostream.h>#include<math.h>voidmain(){inti,j;for(i=100;i<=200;i++){inttemp=int(sqrt(i));for(j=2; (1) :i++)if(i%j==0) (2);if( ⑶ )cout«i«*}cout«*\n';(1)j<=temp (2)break(3)j>temp2、斐波那契数列第1和第2个数分别为0和1,从第三个数开始,每个数等于其前两个数之和。求斐波那契数列中前20个数,规定每行输出5个数。#include<iostream.h>voidmain(){intf,fl,f2,i;coutくぐ,斐波那契数列:\n";fl=0;f2=l;cout«setw(6)«fl«setw(6)«f2;for(i=3;i<=20;i++){f=(1);cout«setw(6)«f;if((2))cout«endl;fl=f2;f2=(3);}cout«endl;(1)fl+f2(2)i%5==0 (3)f3、计算加か+4值。/1=1z!#include<iostream.h>voidmainO{doublex,pl=l,p2=l,s=0;inti,j=l;coutくく”输入x值:";cin>>x;for(i=l;i<=10;i++){pl*=(1);p2*=(2);s+=j*pl/p2;//j值为(-I)"]j= (3);)cout«s«endl;(1)X (2)I⑶-j4、采用辗转相除法求出两个整数最大公约数。#include<iostream.h>voidmain()(inta,b;coutくく〃请输入两个正整数:〃;cin»a»b;while(a<=0||_(1)){coutくく“重新输入:";cin»a»b;}while(b){intr;r=a%b;―⑵—;—⑶—;〃分另リ修改a和b值)cout«a«endl;〃输出最大公约数(2)a=b(1)b<=0(2)a=b⑶b=r5、把从键盘上输入一种不不大于等于3整数分解为质因子乘积。如输入24时得到输出成果为“2223”,输入50时得到输出成果为“255”,输入37时得到输出成果为“37”。#include<iostream.h>voidmain()(intx;coutくく〃请输入ー种整数,若不大于3则重输:";docin»x;while((1));inti=2;do{while((2)){cout«i«,';x/=i;—(3)—;}while(i<x);if(x!=l)cout«x;cout«endl;)x<3(或x<=2) (2)x%i==O⑶i++6、下面函数是求两个整型参数a和b最小公倍数。intf2(inta,intb)(inti=2,p=l;do{while(a%i==0&&(1)){p*=i;a/=i;b/=i;)—(2)—;}while(a>=i&&(3));returnp*a*b;(1)b%i==O (2)i++(或++i)(3)b>=i7、在输出屏幕上打印出一种由字符,*,构成等腰三角形,该三角形高为5行,从上到下每行字符数依次为1,3,5,7,9〇#include<iostream.h>voidmain()(inti,j;for(i=l;(1);i++){for(j=l;j<=9;j++)if(j<=5-iII —⑵—)cout«zヽelse(3);cout«endl;})(1)i<=5j>=5+i(1)i<=5coutくく’*'8、记录字符串中英文字母个数程序。#include<iostream.h>intcount(charstr[]);voidmain(){charsi[80];coutくく”Enteraline:99;cin»sl;coutくぐcount=99くくcount(si)«endl;}intcount(charstr[]){intnum=0;〃给记录变量赋初值for(inti=0;str[i];i++)if(str[i]>=9a9&&str[i]<=9z9⑴一)—(2)—;—⑶—;)(1)str[i]>=9A9&&str[i]<=9Z9 (2)num++(3)returnnum9、主函数调用ー种fun函数将字符串逆序。#include<iostream.h>#includeくstring.h>voidmain(){chars[80];cin»s;—(2)—;coutくぐ,逆序后字符串:"くく

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论