1、a0+i*d,其中d为该数组类型所占的字节数,Turbo C+中int占二字节,而VC+中是4字节。4、假定a为一个整型数组名,则元素a4的字节地址为a4=a0+4*4A. a+4B. a+8C. a+16D. a+32此题应注意的是:在C+中、假定一下全是int型的数据则a(4)一个整型变量空间赋初值为4、而b3则代表长度为3的数组、其中有3个数值、而指针并不分配空间而是指向空间中的数据。5、假定AB为一个类,则执行“AB a(4) , b3 , * p2 ;”语句时,自动调用该类构造函数的次数为所以其值为:4次A. 3B. 4C. 6D. 9operator运算符重载用的 其中&的意思有三
2、种:1、位与 2、取地址符 3、表引用 引用即为别名6、假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为:A. AB operator+(AB a , AB b) B. a) /应该是表示引用C. a) D. operator+( )二、填空题)1、C+语言中的每条基本语句以; 作为结束符,每条复合语句以 作为结束符。2、执行“cout char(A+2)5的相反表达式为x+y=56、假定一个一维数组的定义为“char * a8 -(指针数组);”,则该数组所含元素的个数为 ,所占存储空间的字节数为32/char 一个字符占4个字节
3、char (*a)5-(数组指针)7、变量分为全局和局部两种,局部 变量没有赋初值时,其值是不确定的。8、假定a是一个二维数组,则aij的指针访问方式为*(ai+j) 或者为: *(*(a+i)+j) 所以在C+中可以实现:ai=a+i;/double为8个字节、int 为:4个字节 指针在32位系统中所占的字节为4/所以其运算结果为:4+8+4*2=20,即为一般结构体所占空间的计算方法 就是累加所有的字节数9、假定一个结构类型定义为“struct D int a ; union int b ; double c ; ; D * d2 ;” ,则该类型的大小为24 字节。10、对一个类中的数
4、据成员的初始化可以通过构造函数中的初始化表实现,也可以通过构造函数中的函数体 实现。11、假定AB为一个类,则执行“AB a10;”语句时,系统自动调用该类的构造函数的次数为10因为要分配至少十个空间出来 构造函数的作用就是起到初始化的作用12、假定类AB中有一个公用属性的静态数据成员bb,在类外不通过对象名访问该成员bb的写法为AB:bb 即相当于bb属于AB 类三、给出下列程序运行后的输出结果1、# include void SB(char ch) switch(ch) case a cout well!; break;Bbgood!Ccpass! default:bad! void ma
5、in() char a1=,a2=,a3=f SB(a1);SB(a2);SB(a3);SB();SB(a1): good SB(a2) pass SB(a3) badSB(A) well2、# include # include /大写字符的范围从A-YZ为:65-90/小写字符的范围从a-z为:97-122 即小写要比大写多:32 char *a5=student,workercadresoldierpeasant; char *p1,*p2; p1=p2=a0; for (int i=0; i0) p1=ai; / strcmp比较字符串内置函数 if (strcmp(ai,p2)0)
6、p2=ai;p1 p2 worker cadre 找到最大和最小的3、 /考全局变量与局部变量的关系int a=5;/定义全局变量 int a=10,b=20;ab/10、20 int a=0,b=0; for (int i=1;6; a+=i; b+=a;/执行加过程 /15 15 5/ 10 204、# include int LB(int *a,int n) /int型的指针未初始化的为0, int s=1;n; i+) s*=*a+; return s; int a=1,2,3,4,5,6,7,8; int b=LB(a,5)+LB(&a3,3);b= /2405、C+中结构体的应用/
7、输入输出流的预处理命令 /字符串的预处理命令/定义结构体 Worker 同C#一样的struct Worker char name15; / 姓名 int age; / 年龄 float pay; / 工资 Worker x; /定义结构体的实例化对象 /* 在C+中如果是在堆上申请得用NEW 和DELETE 如果是在栈上的话,就不能用NEW。 Char* p;这样的也是有很多的 而且还有拷贝构造和赋值构造,拷贝的好像比较少,主要是赋值 char* p=q; 还有引用 char* &p=q;*/ char *t=liouting /定义指针*t int d=38; float f=493; /
8、字符串拷贝 strcpy(a,b) 把b的内容复制到a strcpy(x.name,t); /即把*t指向地址的内容复制给x.Name x.age=d; x.pay=f;用结构体来显示人员的详细信息:x.namex.agex.pay /liouting 38 493 6、此题主要用于考类的继承调用以及变量的释放顺序/有关类的继承以及调用class A int a;public: A(int aa=0) a=aa; A() cout Destructor A! /Destructor破坏者、垃圾回收销毁机制/类B继承与类Aclass B:public A int b; B(int aa=0,int bb=0):A(aa) b=bb; B() cout b) return 1; else if (a=b) return 0; else return -1;比较大小2、float FI(int n)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1