计算机选择题02

计算机选择题02_第1张图片

此题 1*2^0 + 0*2^1 + 1*2^2 + 1*2^3 + 1*2^4 = 29  选择D

计算机选择题02_第2张图片 

空格是单个字符,而空字符串实质是字符串,类型不同。

计算机选择题02_第3张图片

枚举语法定义的格式如下: 

1

enum 枚举名 {枚举元素1,枚举元素2,……};

  • 没有指定值的枚举元素,第一个枚举成员的默认值为整型的 0。所以my为0。 
  • 对于已指定的值,后续枚举成员的值在前一个成员上加 1,以此类推。所以his为10
  • 题目已经指定:your为9her = his + 3=13

计算机选择题02_第4张图片

将四个选项全部转换为十进制数。

  • A选项,二进制数,1*2^0 + 1*2^2 + 1*2^4 + 1*2^7 = 149。
  • B选项,八进制数,7*8^0 + 2*8^1  + 2*8^2 = 151。
  • C选项,八进制数采用0,1,2,3,4,5,6,7八个数字,逢八进1。因此(96)8 这种表示不合法。不予考虑。
  • D选项,五进制数,3*5^0 + 4*5^1 + 1*5^2 = 48。
  • 因此,A项,B项,D项的三个数字分别为149,151,48。

所以最大的数字为B项,本题选B。

计算机选择题02_第5张图片

在某些情况下,函数名可以作为实参传递,所以 A 选项错误。函数递归调用使用栈区来递归,需要额外开销,并且效率不高, C 选项错误。递归调用需要明确指出递归结束条件,否则就陷入死循环了。

计算机选择题02_第6张图片

定义一个数组使用[]确定其大小,[]中的值须为定制,define宏定义的值也为定值,可以用来定义数组 

若需要定义不确定长度的则使用new进行分配,int *a=new int[size];

计算机选择题02_第7张图片

“[]”的优先级比“*”要高。

B中,“()”的优先级比“[]”高,“*”号和a构成一个指针的定义,指针变量名为a,int 修饰的是数组的内容,即数组的每个元素。数组在这里并没有名字,是个匿名数组。那现在我们清楚a 是一个指针,它指向一个包含10 个int 类型数据的数组,即数组指针

C中,a先与“[]”结合,构成一个数组的定义,数组名为a,int *修饰的是数组的内容,即数组的每个元素。那现在我们清楚,这是一个数组,其包含10 个指向int 类型数据的指针,即指针数组。

计算机选择题02_第8张图片 

 

实现机理是这样的: 

有一组数据A=[29,6,28,20,2,24]

①第一次先排前俩,第二次排前三。。。。以此类推 

②先获取A[j]的值存入一个变量中 

③每次循环判断大小的目的就是为了找到A[j-1]小于e的情况 

④当出现前大于e的情况,那就把大的值后移,也就是赋值给A[j] 

⑤当出现前不大于e的时候(A[j-i]

第一趟的结果为6 29 28 20 2 24

第二趟为6 28 29 20 2 24

第三趟:  j为3,e为A[3] = 20,那么先比较的就是A[3-1]和e,其结果为A[3]被赋值为A[3-1],

而后j-- 进入A[2-1]和e的判断,同样是A[2]被赋值为A[1],

然后再判断A[0]和e,发现A[0]小于e,break退出,此时j=1,A[1]=e;end;

计算机选择题02_第9张图片

全局变量主要用于函数之间数据的传递。具体应用在两方面:一是函数可以将结果保存在全局变量中,这样函数得到多个执行结果,而不局限于一个返回值;二是由于函数可以直接使用全局变量的数据,从而减少了函数调用时的参数。

计算机选择题02_第10张图片 

1:只有类的成员函数才能说明为虚函数;  
2:静态成员函数不能是虚函数;  
3:内联函数不能为虚函数;  
4:构造函数不能是虚函数;  
5:析构函数可以是虚函数,而且通常声明为虚函数。

计算机选择题02_第11张图片


对于重载的函数来说,他们应该在形参数量 或者形参列表 上有所不同,不允许 两个函数除了函数返回类型 不同其他都相同的情况。另外main函数不能重载。

计算机选择题02_第12张图片

 

考察的是指针函数,即指带指针的函数,即本质是一个函数,函数返回类型是某一类型的指针
格式:类型标识符 *函数名(参数表)

函数返回值必须用同类型的指针变量来接受,也就是说,指针函数一定有函数返回值,而且,在主调函数中,函数返回值必须赋给同类型的指针变量,题目中k被声明为一个指针变量。

计算机选择题02_第13张图片


A和D看起来都对,但是区别在于D有引号而A没有引号

计算机选择题02_第14张图片

&a是数组指针,其类型为int(*)[4]; 
而指针加1要根据指针类型加上一定的值,不同类型的指针+1之后增加的大小不同,a是长度为4的int数组指针,所以要加5*sizeof(int),所以ptr实际是a[4],但是ptr与(&a+1)类型是不一样的,这点非常重要,所以ptr-1只会减去sizeof(int*),a,&a的地址是一样的,但意思就不一样了,a是数组首地址,也就是a[0]的地址,&a是对象(数组)首地址,a+1是数组下一元素的地址,即a[1],&a+1是下一个对象的地址,即a[4]

计算机选择题02_第15张图片

亲自实验了一下,win10下,Ctrl+Space可以,Ctrl+Shift不行

计算机选择题02_第16张图片 

考察的是进制转换。 

将选项统一成十进制,然后作比较。 

  • 选项A:(1001010) 2   二进制--->十进制,2+23+26=74 
  • 选项B:(227) 8 八进制--->十进制,7+2*8+2*82=151 
  • 选项C:(96) 16  十六进制--->十进制,6+9*16=150 
  • 选项D:(143) 5  五进制--->十进制,3+4*5+1*52=48

计算机选择题02_第17张图片

A,链式存储情况下不一致 

B,优劣要看使用情况 

D,二维数组是顺序存储的线性表,元素就是线性表中的元素

 计算机选择题02_第18张图片

 
题目里是不是应该是两个线程。感觉两个进程。i++是独立的。必然是100

计算机选择题02_第19张图片


A: drop table book 是删除整个表,题目的潜在意思是删除表中的数据而并非删除整个表。因此A错。
B: truncate table book 是删除表中的数据,删除速度比delete更快,无法撤回(回退)。
C: delete from book  删除数据表中的数据,可以回退,可添加where 子句。
D:语法错误。

你可能感兴趣的:(计算机选择题02)