《C++语言程序设计》综合练习与期末复习题
更新时间:2024-04-30 22:47:01 阅读量: 综合文库 文档下载
- c语言程序设计课后题答案推荐度:
- 相关推荐
《C++语言程序设计》综合练习与期末复习题
说明:本综合练习题中的各数据类型长度均参照16位编译系统的相关规定。例如:整型(int)数据占用2个字节的存储单元。
一、语法选择题
1.由C++源程序文件编译而成的目标代码文件的缺省扩展名为( )。 A.cpp B.exe C.obj D.lik
2.设x和y均为bool类型,则x&&y为真的条件是( )。 A.它们均为真 B.其中一个为真 C.它们均为假 D.其中一个为假
3.设有int i;则表达式i=1,++i,++i||++i;i的值为 ( )。 A.1 B.2 C.3 D.4
4.设有int i;则表达式i=1,++i, i++&&++i; i的值为 ( )。 A.1 B.2 C.3 D.4
5.设有int a[ ]={10,11,12},*p=&a[0];则执行完*p++;*p+=1;后a[0],a[1],a[2]的值依次是 ( )。
A.10,11,12 B.11,12,12 C.10,12,12 D.11,11,12 6.设有int i, j, k; 则表达式i=1,j=2,k=3, i&&j&k 的值为 ( )。 A.1 B.2 C.63 D.0
7.设有说明int s[2]={0,1},*p=s; 则下列错误的C++语句是( )。 A.s+=1; B.p+=1; C.*p++; D. (*P)++;
8.若有char a[3]= {?A?,?\\0?,?D?},*P=a,i=2,j=4;则下列表达式值不是1的有( )。
A.strlen (a); B.j‖j; C.* (P+1); D.- -ⅰ; 9.表达式4‖3‖2‖1的值为( )。 A.1 B.2 C.3 D.4 10.表达式1&3&5&7的值为( )。 A.1 B.3 C.5 D.7
11.设a、b和c都是int型变量,且a=3,b=4,c=5,则下列表达式中,值为0的表达式是( )。
A.'A'&&'B' B.a<=b
C.c>=b||b+c&&b-c D. a<=b+c&&c>=a+b 12.若x和y都是int型变量,x=100,y=200,则下面程序片段cout<<(x,y)< 1 A.200 B.100 C.100 200 D.输出格式符不够,输出不确定的值 13.下面各语句中,能正确进行字符串赋值操作的语句行是( )。 A.char s[4][5]={\ B. char s[5]={'A','B','C','D','E'} C. Char *s; s=\D. char *s; cin>>s; 14.若有:int a[6]={4,5,6,9,5,7},*p=a, *q=p; 则对数组元素的错误引用是( )。 A. a[4] B. *(p+4) C. *a++ D. *q++ 15.下列不正确的转义字符是( )。 A.'\\\\' B.'\\\ C.'074' D.'\\0' 16.若有以下定义: char a; int b; float c; double d; 则表达式a*b+d-c*b值的类型为( )。 A. float B. int C. char D. double 17.表示关系x<=y<=z的C++语言表达式为( )。 A. (x<=y)&&(y<=z) B. (x<=y)AND(y<=z) C. (x<=y<=z) D. (x<=y)&(y<=z) 18.设x和y均为int型变量,则执行下面的循环后,y值为( )。 for(y=1,x=1;y<=50;y++) { if(x>=10)}break; if (x%2==1) { x+=5; continue;} x-=3; } A.2 B. 4 C. 6 D. 8 19.给出以下定义: char x[ ]=\ char y[ ]={'a','b','c','d','e','f','g'}; 则正确的叙述为( )。 A.数组X和数组Y等价 B.数组X和数组Y的长度相同 C.数组X的长度大于数组Y的长度 D.数组X的长度小于数组Y的长度 20.以下叙述中不正确的是( )。 A.在不同的函数中可以使用相同名字的变量 2 B.函数中的形式参数是局部变量 C.在一个函数内定义的变量只在本函数范围内有效 D.在一个函数内的复合语句中定义的变量在本函数范围内有效 21.假定a和b为int型变量,则执行以下语句后b的值为( )。 a=1; b=10; do { b-=a; a++; } while (b--<0); A. 9 B. –2 C. -1 D. 8 22.对于结构中定义的成员,其隐含访问权限为( )。 A. public B. protected C. private D. static 23.设P1和P2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是( )。 A.k=*P1+*P2; B.p2=k; C.P1=P2; D.K=*P1 * (*P2); 24.设有如下定义: int arr[]={6,7,8,9,10}; int * ptr; 则下列程序段的输出结果为( )。 ptr=arr; * (ptr+2)+=2; cout<<*ptr<<*(ptr+2)< A.8,10 B.6,8 C.7,9 D.6,10 25.执行以下程序段后,m的值为( )。 int a[2][3]={ {1,2,3},{4,5,6} }; int m,*p; p=&a[0][0]; m=(*p)*(*(p+2))*(*(p+4)); A. 15 B. 14 C. 13 D. 12 26.当使用ifstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为( )。 A. ios::in B. ios::out C. ios::in | ios::out D.没有 27.设有定义 int (*ptr)(); 则以下叙述中正确的是( )。 A. ptr是指向一维数组的指针变量 B. ptr是指向int型数据的指针变量 C. ptr是指向函数的指针,该函数返回一个int型数据 3 D.ptr是一个函数名,该函数的返回值是指向int型数据的指针 28.设有以下说明和定义: typedef union { long i; int k[5]; char c; }DATE; struct date { int cat; DATE cow; double dog; } too; DATE max; 则下列语句的执行结果是( )。 cout<<(sizeof (struct date ) +sizeof(max))< { char a[]=\, b[]=\ char *p1,*p2; int i; p1=a; p2=b; for(i=0;i<7;i++) if(*(p1+i)==*(p2+i)) cout<<*(p1+i); } 输出结果是( )。 A. gm B. rg C. or D. ga 30.执行以下程序后的输出结果为( )。 viod fun (int a,int b,int c) { a=4; b=5; c=6;a=b+c;b=c+a;c=a+b;} main() { int x=10, y=20,z=30; fun (x,y,z); cout< A.30,20,10 B.10,20,30 C.11,17,28 D.4,5,6 31.执行以下程序后的输出结果为( )。 int fun(int x,int y,int *cp,int *dp) { *cp=x+y; *dp=x-y; } main() { int a, b, c, d; a=30; b=50; fun(a,b,&c,&d); 4 cout< A.50,30 B.30,50 C.80,-20 D.80,20 32.设x和y均为int型变量,则以下语句x+=y; y=x-y; x-=y; 的功能是( )。 A.把x和y按从大到小排列 B.把x和y按从小到大排列 C.无确定结果 D.交换x和y中的值 33.以下程序的输出结果是( )。 main() { int a=12,b=12; cout<<(--a)<<” ”<<(++b)< A.10 10 B.12 12 C.11 10 D.11 13 34.以下程序运行后,输出结果是( )。 main() { char *s=\ s+=2; cout< A.cde B.字符c的ASCII码值 C.字符c的地址 D.出错 35.当执行以下程序段时( )。 x=-1; do { x=x*x;} while( !x); A.循环体将执行一次 B.循环体将执行两次 C.循环体将执行无限次 D.系统将提示有语法错误 36.执行以下程序后,输出的结果是( )。 main() { int y=10; do {y--;} while(--y); cout<<(y--)< A.-1 B.1 C.8 D.0 37.若有 int a; 则表达式语句 a+=a -=a*a; 等价于下列哪组表达式语句( )。 A. a+a; a*a; B.a=a+a; a=a-a*a; 5 C. a=a+a-a*a; D.a=a-a*a; a=a+a; 38.设有如下C语句: struct node { int val; struct node *next; }; struct node sa[3]={ {5},{7},{9} },*sp; sa[0].next=sa+1; sa[1].next=sa+2; sa[2].next=NULL; sp=sa; 则下面哪个表达式的值是6?( )。 A. ++sp->val B. sp->val++ C. (*sp).val++ D. sp++->val 39.当需要把一个带初始化的变量定义为常值变量时,则应在该语句的前面加上关键字( )。 A.static B.const C.continue D.extern 40.假定一个字符串的长度为n,则定义存储该字符串的字符数组的长度至少为( )。 A.n-1 B.n C.n+1 D.n+2 41.假定AB为一个类,则该类的拷贝构造函数的正确声明是( )。 A.AB(AB x); B. AB(AB &); C. AB(AB *); D. AB&(AB & x); 42.当需要打开A盘上的xxk.dat文件用于输入时,则定义文件流对象的语句为( )。 A. fstream fin(“A:\\\\xxk.dat”); B. ofstream fin(“A:\\\\xxk.dat”); C. ifstream fin(“A:\\\\xxk.dat” , ios::app); D. ifstream fin(“A:\\\\xxk.dat” , ios::nocreate); 43.当需要将一个函数 bool isnumber (char c) ; 声明为内联函数时,则此内联函数的函数原型为( )。 A. enum bool isnumber (char c) ; B. define bool isnumber (char c) ; C. inline bool isnumber (char c) ; D. extern bool isnumber (char c) ; 44.在下面的函数声明中,存在着语法错误的是( )。 A. void BC ( int a , int ); B. void BD ( int , int ); C. void BE ( int , int=5 ); D. void BF ( int x ; int y ); 45.假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为( )。 6 A.AB operator+(AB &a ,AB &b); B. AB operator+(AB &a ); C. operator+(AB a ); D. AB & operator+( ); 46.在下列的一维数组定义中,哪一个有语法错误的( )。 A.int a[]={1,2,3}; B.int a[10[={0}; C.int a[]; D.a[5]; 47.假定AB为一个类,则该类的拷贝构造函数的调用语句为:( )。 A.AB x,y( x); B. AB x,y; C. AB x,y(AB &); D. AB x,y(AB &x); 48.下面的哪一个保留字不能作为函数的返回类型? A.void B.int C.new D.long 49.假定a为一个整型数组名,则元素a[4]的字节地址为( )。 A. a+4 B.a+8 C.a+16 D.a+32 50. 假定AB为一个类,则执行“AB a(4),b[3],*p[2];”语句时,自动调用该类构造函数的次数为( )。 A.3 B.4 C.6 D.9 二、语法填空题 1.执行 cout< 2.描述命题“A小于B或小于C”的表达式为 。 3.在C++中有二种参数传递方式: 和 。 4.定义重载函数时,应在参数个数、参数类型或参数次序上 。 5.类是用户定义的类型,具有类类型的变量称作 。 6.当建立一个新对象时,程序自动调用 。 7.设P是指向具有10个元素的一维数组的指针变量,该数组元素类型int,则指针变量P的定义为 。 8.若有int i=3,j=7; 执行cout<<(ⅰ+ +)<,?<<(j=5,+ +j)< 9.当一个成员函数被调用时,该成员函数的 指向调用它的对象。 10.拷贝初始化构造函数使用 来初始化创建中的对象。 7 11.一个C++函数由两部分组成,即: 和 。 12.C++中函数定义的格式是 。 13.已知一函数的定义是:char *Hi (const char *s ) {cout<<”Hi!”< 14.一个C++程序总是从 开始执行。 15.C++语言程序中出现的/*??*/部分或//??部分所起的作用是 。 16.C++语言中数组元素的访问方式有两种,即: 和 。 17.假定a是一个二维数组,则a[ i ][ j ]的指针访问方式为 。 18.执行typedef int ABC[10] ; 语句把ABC定义为具有10个整型元素的 。 19.假定要访问一个结构指针p 所指对象中的b 指针成员所指的对象,则表示方法为 。 20.设px 是指向一个类动态对象的指针变量,则执行delete px ; 语句时,将自动调用该类的 。 21.C++规定:在每一个字符串的结尾加上一个 ,以便系统据此判断字符串是否结束。 22.C++语言中数据类型的转换有两种,即: 和 。 23.C++语言规定了运算符的优先级和结合性,其结合性分为 和 。 24.对一个类中的数据成员的初始化可以通过构造函数中的 实现,也可以通过构造函数中的 实现。 25.假定AB为一个类,则执行 AB a[10] ; 语句时,系统自动调用该类构造函数的次序为 。 26.假定类AB中有一个公用属性的静态成员bb, 在类外不通过对象名访问该成员 bb 的写法为 。 27.若有int a=4; float b=14.70; 则4/5的值为 ,4.0/5的值为 ;能正确表示a+b对a取余的表达式是 。 28.若有int x=4,y=7; 则表达式x+=y,x*=x+y的值为 。 29.x>1 && y!=0的相反条件为 。 30.过程化程序设计方法中,程序有三种基本结构, 8 即: 、 、 。 31.表达式?c?&&?d?的值为 ,表达式?c?&&?\\0?的值为 ,表达式!?c?||?c?<=?d?的值为 。 32.分支语句if(x>=y) max=x; else max=y; 用含条件运算符的赋值语句表示为 。 33.C++语言中所提供的循环控制语句有三种,即: 、 、 。 34.在C++中,若需要在程序文件中进行标准输入输出操作,则必须在开始加入预处理命令 ,若使用到数学库中的函数时,要在源程序的开始加入预处理命令 。 35.C++语言中用来存放变量地址的变量称作 。 36.在C++程序中,可以用两种方法实现一个字符串,即: 和 。 37.假定用户没有给一个名为AB的类定义构造函数,则系统为其隐含定义的构造函数为 。 38.int *p[10]; 的含义是 。 39.int (*p)( ); 的含义是 。 40.int &p; 的含义是 。 41.int **p; 的含义是 。 42.若有定义int a[10], *p=a; 则 p++的含义是 。 43.若有int a[4]={10,11,12,13},b,* p=a; 则 执行语句b=*p++; 后b的值是 ,接着执行语句b=*++p; 后 b的值是 ,再执行语句b=++*p; 后b的值是 。 44.定义一种新的类型INTEGER,使其与int 等价,则正确的表示方式为 。 45.定义一个符号常量EOF ,使其与-1等价,则正确的表示方式为 。 46.C++语言中根据数据的组织形式,可以将文件分为: 和 。 47.OOP是术语 的英文简称,OOP方法是软件工程学中结构化程序设计,过程化、模块化、数据抽象、信息掩蔽、知识表示、并行处理等概念的积累和发展,它所依赖的最基本的概念是 、 和 。 48.若需要把一个函数 void F( ); 定义为一个类AB的友元函数,则应在类AB的定义中加入一条语句: 。 9 49.在C++中用 代替了C语言中的带参数宏定义。 50.C++语言所提供的定义结构体、共用体和类等三种类型的关键字分别是 、 、 。 51.执行“cout<<43<-?<<18<=?<<43-18< 52.使用const 语句定义一个标识符常量时,必须同时对它进行 。 53.假定p所指对象的值是25,p+1所指对象的值是46,则执行“(*p)++;”语句后,p所指对象的值为 。 54.假定px是指向一个有10个元素的类动态数组空间的指针变量,则执行“delete px;”语句时,将自动调用该类的析构函数 次。 55.变量分为全局和局部两种, 变量没有赋初值时,其值为不确定。 56.假定a 为一个二维数组,则a[i][j]的指针访问方式为 。 57.假定一个结构类型的定以为“struct D{long a;union {int b;double c;};D *d[2];};”则该类型的大小为 字节。 58.p 是指向 int 型变量x的指针变量,其定义语句表示为 。 59.假定p 是一个指向整型一维数组的指针变量,在取出p 所指的元素值后p 自动指向下一个元素的表达式为 。 60.将f=i+5; i=i+1; 用一个赋值语句表示出来为 。 三、给出下列程序运行后的输出结果 (1) #include \ void main() {int s=0; for(i=0;;i++) { if(s>50) break; if(i%2= =0) s+=i;} cout<<”i,s=”< (2) #include void main() {char a[]=?abcdabcabefacd”; int i1=0,i2=0,i=0; while (a[i]){ if(a[i]= =?a?) i1++; if(a[i]= =?b?) i2++; 10 i++;} cout< (3) #include main() {int a[9]={2,4,6,8,10,12,14,16,18}; for(i=0;i<9;i++) { cout< if((i+1)%3= =0) cout< } } (4) #include void LE(int *a,int *b){ int x=*a; *a= *b; *b=x; cout<<*a< ?<<*b< void main() {int x=10,y=25; LE(&x,&y); cout< } (5) #include \ class A{ int a,b; public: A(){a=b=0;} A(int aa,int bb){ a=aa; b=bb; cout< void main() {A x,y(2,3),z(4,5); } (6) #include \ temple TT a1,a2,a3; 11 public: FF(TT b1,TT b2,TT b3){ a1=b1;a2=b2;a3=b3; } TT sum(){return a1+a2+a3;} ]; void main() {FF cout< } (7) #include \ void SB(char ch){ switch(ch){ case ? a?:case ?A ?: cout<<”well!”;break; case ? b?:case ?B ?: cout<<”good!”;break; case ? c?:case ?C ?: cout<<”pass!”;break; default: cout<<”bad!”;break; void main() {char a1=?b?,a2=?C?,a3=?f?; SB(a1);SB(a2);SB(a3);SB(?A?); cout< } 若main()函数改为: void main() {char a[6]=”Abcaf”; for(int i=0;a[i];i++) SB(a[i]); } (8) #include #include *a[5]={“student”,”worker”,”cader”,”solider”,”peasant”}; char p1,p2; p1=p2=a[0]; for(int i=0;i<5;i++) { if(strcmp(a[i],p1)>0) p1=a[i]; if(strcmp(a[i],p2)<0) p2=a[i]; } cout< 12 (9) #include \ int a=5; void main() {int a=10,b=20; cout<,a< ?< for(int i=1;i<6;i++) { a+=i;b+=a;} cout< cout< (10) #include \ int LB(int *a,int n){ int s=1; for(int i=0;i return s; } void main() {int a[]={1,2,3,4,5,6,7,8}; int b=LB(a,5)+LB(&a[3],3); cout<<”b=”< (11) #include < iostream.h> #include int age; float pay; }; void main() {Worker x; char *t=”liouting”; int d=38; f=493; strcpy(x.name,t) x.age=d;x.pay=f; cout< 13 (12) #include \ class A{ int a; public: A(int aa=0){a=aa;} ~A(){cout<<”Destructor A!”< }; class B:public A{ int b; public: B(int aa=0,int bb=0):A(aa){b=bb;} ~B(){cout<<”Destructor B!”< void main() {B x(5),y(6,7); } (13) #include #include double SD(int a,int b,char op){ double x; switch(op){ case ?+?:x=double(a )+b;break; case ?-?:x=double( a)-b;break; case ?*?:x=double(a)*b;break; case ?/?:if(b)x=double(a)/b;break; else exit(1); default:exit(1); } return x; } void main() {int x=25,y=8; cout< } (14) #include void main() {int a[8]={36,25,48,14,55,40,32,66}; int b1,b2; 14 b1=b2=a[0]; for(i=1;i<8;i++) { if(a[i]>b1){ if(b1>b2) b2=b1; b1=a[i]; } cout< 若将>全改成<,结果如何? (15) #include void WF(int x,int y){ x=x+y; y=x+y; cout<<”sub:”<<”x,y=”< void main() {int x=8,y=15; cout<<”main:”<<”x,y=”< cout<<”main:”<<”x,y=”< cout<<”main:”<<”x,y=”< } (16) #include void LC(int a,int b){ int x=a; a=b; b=x; cout< void main() {int x=10,y=25; LC(x,y); cout< } 若将LC的形参表改为:LC(int &a,int &b)则结果如何?(17) #include #include int age; float pay; 15 }; bool operator = =(Worker &r1, Worker &r2){ if(strcmp(r1.name,r2.name)= =0) return true; else return false; } void main() { Worker a[4]={{“abc”,25,420},{“def”,58,638}, {“ghi”,49,560},{“jkl”,36,375}}; Worker x={“ghi”}; for(i=0;i<4;i++) if(a[i]= =x) break; cout< (18) #include void main() {int a[8]={3,5,7,9,11,13,15,17}; int *p=a; for(i=0;i<8;i++) { cout< if ((i+1)%4= =0) cout< } } (19) #include \ void main() {int s=0; for(i=1;i<=6;i++) s=+i*i; cout<<”s=”< (20) #include void LG(int*&a,int &m){ a=new int[m]; int* p=a; for(int i=0;i void main() { int *b,n=5; 16 ?< for(int i=0;i cout< 四、写出下列每个函数的功能 (1) double SF(double x,int n){ //n为大于等于0的整数 double p=1,s=1; for(int i=1;i<=n;i++){ p*=x; s+=p/(i+1); } return s; } (2) float FH(){ float x,y=0,n=0; cin>>x; while(x!=-1){n++;y+=x;cin>>x;} if(n= =0)return y; else return y/n; } (3) #include for(int i=0;i for(int j=i+1;j (4) #include //假定文件中保存着一批字符串,每个字符串长度均小于20 ifstream fin(fname); char a[20]; int i=0; while(fin>>a){ cout< cout<<”i=”< (5) #include 17 void SA(int a,int b){ if(a>b) return 1; else if(a= =b)return 0; else return –1; } (6)float FI(int n){ / /n>=1 float x,y=0; do{ cin>>x;n--;y+=x*x; }while(n>0); return y; } (7)template void WE(Type a[],Type b[],int n){ for(int i=0;i (8)struct StrNode{ char name[15]; StrNode *next; }; void QB(StrNode *&f,int n){ if(n= =0){f=NULL;return;} f=new StrNode; cin>>f->name; StrNode *p=f; while(--n){ p=p->next=new StrNode; cin>>p->name; } p->next=NULL; } (9) struct StrNode{ char name[15]; StrNode *next; }; void QC(StrNode *f){ while(f) {cout< (10)int SC(int a,int b,int c){ if(a>=b && a>=c)return a; if(b>=a && b>=c)return b; 18 if(c>=a && c>=b)return c; } (11)bool WB(int a[],int n,int x){ for(int i=0;i if (a[i]= =x)return true; return false; } (12)#include int k=0; for(int i=1;i } (13)int SE(int n){ // n>=1 int x; cin>>x; if(n= =1) return x; int m=x; while(--n){cin>>x;m+=x;} return m; } (14)int WC(int a[],int n,int k){ int c=0; for(int i=0;i (15) #include #include int JB(char *fname,char *key) {//假定文件中保存着一批字符串,每个字符串长度均小于20 ifstream fin(fname);//称为fname文件 char a[20]; int i=0; while(fin>>a) if(strcmp(a,key)= =0) i++; fin.close(); return i; } (16) struct Worker{ char name[16]; int age; 19 float pay; }; istream &operator>>(istream &istr,Worker &x){ cout<<”请输入一个职工记录:”< return iatr; } (17)#include void LI(int n){ int *a=new int[n]; for(int i=0;i for(i=n-1;i>=0;i--) cout<<*(a+i)< ?; cout<\\n?; delete []a; } (18) #include #include ofstream fout(fname); char a[20]; cin>>a; while(strcmp(a,”end”)! =0) { fout<>a; } fout.close(); } 五、根据要求直接编写一个程序、一个函数 (1)编写函数void selectsort(int a[],int n),使数组元素升序排列(用选择法)。 (2) 编制一个函数:此函数能对一维数组内存放的10个学生成绩求平均成绩。(形参用数组) (3) 编制一个函数:此函数能对一维数组内存放的10个学生成绩求平均成绩。(形参用指针)。 (4)编写函数int FF(int a[],int n),求出数组a的n个元素中大于等于平均值的元素个数并返回。 (5)有如下两个函数实例: double Max(double x,double y){return (x>y)?x:y;} int Max(int x,int y){return (x>y)?x:y;} 请写出函数摸板。 (6)将下列程序分别用do?while和for 循环结构进行改写。 main() 20 {int i, sum=0; i=1; while(i<=100) {sum=sum+i; i++; } cout< } (7)编写程序,从保存整数的文本文件中”a:xxkl. dat”中依次取出每个数据并显示出来,同时统计并显示所有数据的个数。 (8)编写程序,把从键盘输入的一批整数(以-1作为终止输入的标志)保存到文本文件”a:xxkl.dat”中。 【参考答案】 说明:本综合练习题中的各数据类型长度均参照16位编译系统的相关规定。例如:整型(int)数据占用2个字节的存储单元。 一、语法选择题 1~5 :C,A,C,D,C 6~10:A,A,C,A,A 11~15:D,A,C,C,C 16~20:D,A,C,C,D 21~25:D,A,B,D,A 26~30:A,C,B,D,B 31~35:C,D,D,A,A 36~40:D,D,A,B,C 41~45:B,D,C,D,B 46~50:C,A,C,B,B 二、语法填空题 1.C 2.A 12.返回类型修饰符;函数名;(形式参数列表) ;函数体 13. char *Hi (const char *s ); 14. main函数的入口地址处 15.注释说明 以增加程序的可读性 16.下标方式;指针方式 17. *(a[ i ]+j) 或 *(*(a+i)+j) 18.数组类型 19. *(p->b) 或 *((*p).b) 20.析构函数 21.字符串结束标志?\\0? 22.自动类型转换; 强制类型转换 21 23.左结合性;右结合性 24.函数体;初始化表 25. 10 26. AB::bb 27. (int)(a+b)%a 或 int(a+b)%a 28. 198 29. x<=1 || y==0 30.顺序结构;选择结构;循环结构 31. 1;0;1 32. max=(x>=y) ? x : y; 33. while 语句;do?while 语句;for 语句 34. #include 36.用字符数组实现;用字符指针实现 37. AB( ){ } 38.定义指针数组p,它有10个指向整型数据的指针元素组成 39. p为指向函数的指针变量,该函数返回一个整型值 40.定义一个整型变量的引用 41.定义一个指针变量p,它指向一个指向整型数据的指针变量 42.指针变量p指向数组a中当前位置的下一个元素 43.10;12;13 44. typedef int INTEGER ; 45. #define EOF -1 46. ASCII码文件;二进制文件 47.面向对象程序设计方法;封装性;继承性;多态性 48. friend void F( ) ; 49.内联函数 50. struct;union;class 51.43-18=25 52.初始化 53.26 54.10 55.局部 56.*(*(a+i)+j) 57.20 58.int x,*p=&x; 59.*p++ 60.f=(i++)+5; 22 三、给出下列程序运行后的输出结果 (1)i,s=15,56 (2)4 3 (3) 2 4 6 8 10 12 14 16 18 (4)25 10 25 10 (5)2 3 4 5 (6)9 21 (7)good! pass! bad! well! (8)worker cader (9)10 20 15 35 5 10 20 (10)b=240 (11)liuting 38 493 (12)Destructor B! 7 Destructor A! 6 Destructor B! 0 Destructor A! 5 (13)17 200 3.125 (14)66 55 (15)main:x,y=8,15 sub:x,y=23,38 main:x,y=16,15 sub:x,y=31,46 main:x,y=16,15 (16)25 10 10 25 修改后输出:25 10 25 10 (17)ghi 49 560 (18) 3 5 7 9 11 13 15 17 (19)s=91 (20)16 9 4 1 0 四、写出下列每个函数的功能 23 (1)计算x/2+x2/3+??+xn/(n+1)并返回。 (2)求出从键盘输入的n个数的平均值并返回。 (3)用选择排序法,将数组a 的前n个元素从小到大排序。 (4)从fname文件中输入一个个字符串,并显示出来,同时统计出字符串的个数。 (5)根据参数a和 b的大小决定返回值:a>b返回1,a (6)求从键盘输入的n个数的平方和并返回。 (7)定义函数模板,将数组a的前n个元素赋值到数组b中。 (8)建立由n个结点组成的单链表。 (9)遍历链表,输出个结点的name 域保存的字符串。 (10)返回三个参数中的最大值。 (11)在数组a 中查找值为x的元素,若找到返回true,找不到则返回false。 (12)从数组a的n个元素中找出最大值,并将其地址返回。 (13)求从键盘输入的n个数的和并返回。 (14)从数组a的n个元素中统计出其值大于等于k的元素个数,并将其返回。 (15)从fname文件中输入一个个字符串,统计出与字符串key相同的字符串个数并返回。 (16)重载提取操作符,用于从输入流中输入一个Worker类型的记录到应用参数x中。 (17)利用动态数组空间,先输入n个元素的值,再反序输出。 (18)将从键盘输入的一批字符串依次写入fname文件中,直到输入end 为止。 五、根据要求直接编写一个程序、一个函数 本题解答见复习课。 24
正在阅读:
48个英语国际音标讲解图及基本语音常识07-18
奶奶的微笑作文800字06-25
阿狸爱情语录02-07
2019中考数学一轮复习第一部分教材同步复习第三章函数第讲数的综合与应用权威预测812-02
我的心儿怦怦跳作文04-01
家乡的特产红枣作文500字06-29
数学高效课堂观摩课活动听课心得体会05-18
瞧这个人真调皮作文600字07-12
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- C++
- 复习题
- 程序设计
- 期末
- 练习
- 语言
- 综合
- 学区校本研训成果资料汇编
- 房地产项目开盘前计划及操作思路
- (完整版)模具设计与制造专业毕业论文
- 360系列产品获得极端评价的原因
- 布尔津县特色小镇投资建设研究报告(目录)
- 学士学位论文- 沈阳农业大学继续教育学院
- 第5组交通物流运输评价指标
- 电力系统事故中人为事故与防范措施
- EPON故障经验汇总
- 四年级上册所有复习资料整理
- 兰州石化计量部大楼电气线路过载安全隐患治理施工方案 - 图文
- 鲁支完小电脑室管理制度
- 浅析《聊斋志异》中的书生形象
- 恒大标准-8酒店式公寓设计要求(住宅式管理模式)..
- 你学法我送票”有奖答题参考答案(2) (1)
- 四下 学习任务单
- 保险学原理习题及答案
- 铁路平面无线调车系统
- 学生信息管理系统毕业设计
- 非常好的C语言章节习题集带答案