达内ios课程第一次月考题.docx

上传人:b****4 文档编号:24641584 上传时间:2023-05-29 格式:DOCX 页数:32 大小:32.10KB
下载 相关 举报
达内ios课程第一次月考题.docx_第1页
第1页 / 共32页
达内ios课程第一次月考题.docx_第2页
第2页 / 共32页
达内ios课程第一次月考题.docx_第3页
第3页 / 共32页
达内ios课程第一次月考题.docx_第4页
第4页 / 共32页
达内ios课程第一次月考题.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

达内ios课程第一次月考题.docx

《达内ios课程第一次月考题.docx》由会员分享,可在线阅读,更多相关《达内ios课程第一次月考题.docx(32页珍藏版)》请在冰豆网上搜索。

达内ios课程第一次月考题.docx

达内ios课程第一次月考题

∙1.

(单选)1、以下表示字符串的是()

o

 A.

charst=”dfgsja”

o

 B.

charst[5]=”abcd”

o

 C.

charst[5]=”abcdef”

o

 D.

charst[5]={‘a’,’b’,’c’,’d’.’e’}

正确答案:

B

∙2.

(单选)下列属于开关分支语句的结构是()

o

 A.

if(条件表达式){语句}

o

 B.

for(表达式1;表达式2;表达式3){语句}

o

 C.

if(条件表达式){语句1}else{语句2}

o

 D.

switch(表达式){case1:

语句1case2:

语句2……casen:

语句ndefault:

语句n+1}

正确答案:

D

∙3.

(单选)下列关于C语言中变量的定义和初始化,正确的是:

()。

o

 A.

bytex=10;

o

 B.

inty=0187;

o

 C.

varz=1234;

o

 D.

longinti=0xABCDEFL;

正确答案:

D

∙4.

(单选)下列关于C语言的结构叙述正确的是()

o

 A.

C语言只有一个函数组成

o

 B.

C语言的执行从第一个函数开始,到最后一个函数结束

o

 C.

C语言是由一个或多个函数组成,其中有且只有一个主函数(main()函数)

o

 D.

C语言中可以有多个主函数(即main())组成

正确答案:

C

∙5.

(单选)有以下代码NSDictionary*dic=[[NSDictionaryalloc]initWithObjectsAndKeys:

@"a",@"A",@"b",@"B",nil];则该字典有几组键值对()

o

 A.

1

o

 B.

2

o

 C.

3

o

 D.

4

正确答案:

B

∙6.

(单选)Objective-C语言中协议是()

o

 A.

所有类的基类

o

 B.

两个类之间的通讯方式

o

 C.

一组没有实现的方法列表

o

 D.

将一个类中某个方法的实现放到另一个类里

正确答案:

C

∙7.

(单选)假设person是TRPerson类型的对象,下面用来判断person对象是否对show消息响应的正确做法是:

()

o

 A.

if([personrespondsToSelector:

@selector(show)])[personshow];

o

 B.

if([personrespondsToSelector:

show])[personshow];

o

 C.

if([personisMemberOfClass:

[TRPersonclass]])[personshow];

o

 D.

if([personisKindOfClass:

[TRPersonclass]])[personshow];

正确答案:

A

∙8.

(单选)return10,20;以上返回值语句,返回的值为()

o

 A.

10,20

o

 B.

20,10

o

 C.

10

o

 D.

20

正确答案:

D

∙9.

(单选)printf(“%d”,strcmp(“abc”,”ABC”));则输出结果是()

o

 A.

10

o

 B.

22

o

 C.

32

o

 D.

0

正确答案:

C

∙10.

(单选)下列代码的输出结果正确的是:

()inta[10]={0};printf(“%d\n”,*(a+9));

o

 A.

9

o

 B.

10

o

 C.

0

o

 D.

垃圾数据

正确答案:

C

∙11.

(单选)有以下代码:

NSMutableDictionary*dic=[NSMutableDictionarydictionaryWithObjectsAndKeys:

@"a",@"A",@"b",@"B",nil];for(NSString*strindic){NSLog(@"%@",str);}则输出结果是()

o

 A.

aAbB

o

 B.

ab

o

 C.

AB

o

 D.

程序有误

正确答案:

C

∙12.

(单选)假设当前时间是20XX年10月8日15:

30分整,以下代码的输出结果是()NSDate*now=[NSDatedate];NSDateFormatter*formatter=[[NSDateFormatteralloc]init];[formattersetDateFormat:

@"YYYY-MM-ddHH:

mm:

ss”];NSString*currentTime=[formatterstringFromDate:

now];NSLog(@”%@”,currentTime);

o

 A.

2013-10-815:

30:

00

o

 B.

2013-10-083:

30:

00

o

 C.

2013-10-0807:

30:

00

o

 D.

2013-10-0815:

30:

00

正确答案:

D

∙13.

(单选)有以下程序ida;a=[[NSStringalloc]init];则a的类型为()

o

 A.

id

o

 B.

NSString

o

 C.

两者都是

o

 D.

两者都不是

正确答案:

A

∙14.

(单选)下列使用for循环的代码,存在语法错误的是:

()

o

 A.

for(inti=0;i<10;i++){}

o

 B.

for(inti=10;i>0;i-=2){}

o

 C.

for(;;);

o

 D.

for(){printf(“Hello\n”;)

正确答案:

D

∙15.

(单选)有以下程序:

{inta[5]={1,2,3,4,5};}则a[5]的值为()

o

 A.

2

o

 B.

5

o

 C.

4

o

 D.

引用错误

正确答案:

D

∙16.

(单选)下列表达式的结果做为逻辑值时,其值为逻辑真的是:

()。

o

 A.

‘A’–0x41;

o

 B.

(‘a’>0)-1;

o

 C.

4>3||x>y;

o

 D.

3>4&&x>y;

正确答案:

C

∙17.

(单选)有以下代码:

#include"stdio.h"main(){inti=10,s=0;while(i>=0){s=s+(i--);}printf(“%d”,s);}以上程序输出结果是()

o

 A.

10

o

 B.

50

o

 C.

55

o

 D.

死循环

正确答案:

C

∙18.

(单选)下列说法正确的是()

o

 A.

延展可以在没有源代码的情况下,在原有类里面添加变量,方法和属性

o

 B.

延展是匿名的类目

o

 C.

延展包含了方法的实现代码

o

 D.

延展可以声明变量,属性和方法

正确答案:

D

∙19.

(单选)id类型在Objective-C开发中应用广泛,假设有以下代码:

idref=@”Tarena”;longlen=[reflength];NSLog(@”len=%ld”,len);下列关于此段代码说法正确的是()

o

 A.

代码能通过编译但有警告产生

o

 B.

代码虽有编译警告但能正常运行

o

 C.

代码虽没有编译警告但运行时异常

o

 D.

代码编译错误

正确答案:

D

∙20.

(单选)如果要统计一行字符的个数,下列哪个循环效率高()

o

 A.

for

o

 B.

while

o

 C.

dowhile

o

 D.

goto

正确答案:

B

∙21.

(单选)下列代码的输出结果是()NSString*str1=@"tarena";NSString*str2=[[NSStringalloc]initWithString:

@"Tarena"];if([str1isEqualToString:

str2]){NSLog(@"yes");}

o

 A.

yes

o

 B.

没有输出

o

 C.

语法错误

o

 D.

YES

正确答案:

B

∙22.

(单选)以下代码输出的结果是()#include"stdio.h"voidmain(){inta;a=1;//a=a+1;/*a=a+1;*/printf("%d",a);}

o

 A.

1

o

 B.

2

o

 C.

3

o

 D.

4

正确答案:

A

∙23.

(单选)有以下程序:

main(){intm=4,k=4;if(m++>5)m=m+2;elsek=k+2;printf(“%d,%d”,m,k);}则程序执行后的结果是()

o

 A.

6,4

o

 B.

7,4

o

 C.

5,6

o

 D.

4,6

正确答案:

C

∙24.

(单选)以下代码的执行结果,正确的是()NSArray*array=@[@"aaa",@"bbb",@"ccc",@"ddd"];__blockNSMutableArray*result=[NSMutableArrayarray];void(^theBlock)(idobj,NSUIntegeridx,BOOL*stop)=^(idobj,NSUIntegeridx,BOOL*stop){[resultaddObject:

obj];};[arrayenumerateObjectsUsingBlock:

theBlock];for(NSString*strinresult){printf("%s\t",[strcStringUsingEncoding:

NSUTF8StringEncoding]);}

o

 A.

无输出

o

 B.

输出:

aaabbbcccddd

o

 C.

输出:

abcd

o

 D.

输出:

dddcccbbbaaa

正确答案:

B

∙25.

(单选)下面是一段处理字符串的C语言代码,其输出结果正确的是:

()charstr[]={‘h’,‘e’,‘l’,‘l’,‘o’,0,‘w’,‘o’,‘r’,‘l’,‘d’,0};printf(“%s”,str);charstr2[10]={0};strcpy(str2,str+6);printf(“%s\n”,str2);

o

 A.

helloworld

o

 B.

helloworldhello

o

 C.

helloworldworld

o

 D.

hellohelloworld

正确答案:

A

∙26.

(单选)下列说法正确的是:

()

o

 A.

所有从NSObject继承来的类,都自动支持复制功能

o

 B.

mutableCopy方法只有可变类才能支持

o

 C.

要支持复制功能,必须实现协议里的方法

o

 D.

以上说法都不对

正确答案:

C

∙27.

(单选)以下代码:

NSMutableString*str1=[[NSMutableStringalloc]init];NSIntegernum1=[str1retainCount];NSMutableString*str2=[str1retain];NSIntegernum2=[str1retainCount];NSMutableString*str3=[str1copy];NSIntegernum3=[str1retainCount];NSLog(@”%ld,%ld,%ld”,num1,num2,num3);输出结果应该是()

o

 A.

1,2,3

o

 B.

1,2,2

o

 C.

1,1,1

o

 D.

0,1,2

正确答案:

B

∙28.

(单选)以下说法正确的是()

o

 A.

深拷贝只复制类成员是类的变量。

o

 B.

浅拷贝只复制类成员是指针的变量

o

 C.

深拷贝只复制类成员的指针

o

 D.

深拷贝不复制基本数据类型

正确答案:

B

∙29.

(单选)下列关于布尔值的C语言代码,输出结果正确的是:

()boolboo1=“abc”>“abd”;boolboo2=0.12;boolboo3=0;boolboo4=true;printf(“%d,%d,%d,%d\n”,boo1,boo2,boo3,boo4);

o

 A.

0,1,0,1

o

 B.

1,1,0,1

o

 C.

0,0,0,1

o

 D.

1,1,1,1

正确答案:

A

∙30.

(单选)若执行以下程序,则输出结果是main(){inta=7,b=2,s=0;s=a;if(a

o

 A.

7

o

 B.

0

o

 C.

2

o

 D.

3

正确答案:

A

∙31.

(多选)下列哪些方法是NSArray类有的:

()

o

 A.

-(BOOL)containsObject:

(id)anObject;

o

 B.

-(NSUInteger)indexOfObject:

(id)anObject;

o

 C.

-(NSArray*)sortedArrayUsingSelector:

(SEL)comparator;

o

 D.

-(void)addObject:

(id)anObject;

正确答案:

ABC

∙32.

(多选)在Objective-C语言中,类中定义方法和定义全局函数是有很大区别的,下列哪些方法的声明正确的是:

()

o

 A.

-(void)setName:

(NSString*)name;

o

 B.

-intsetName(int,name);

o

 C.

-(void)setName:

(NSString)name;

o

 D.

+(instancetype)name;

正确答案:

AD

∙33.

(多选)下列关于NSArray和NSSet的特点,说法正确的是:

()

o

 A.

NSArray有下标,可以用下标访问其成员,但NSSet没有下标。

o

 B.

NSArray中的元素是有序连续存放的,而NSSet中的元素是无序的,程序中无法准确判断第一次放进去的对象是哪个。

o

 C.

NSArray和NSSet中只能放对象的引用,不能放其他基本类型如int的数据,自然也不能放结构体类型的数据。

o

 D.

NSArray和NSSet都拥有addObject方法,可以向其内部增加对象。

正确答案:

ABC

∙34.

(多选)下列关于#include预处理指令,语法正确的是:

()。

o

 A.

#include

o

 B.

#include“stdio.h”

o

 C.

#include“my.h”

o

 D.

#include<>

正确答案:

ABC

∙35.

(多选)下列关于递归函数,说法正确的是:

()

o

 A.

递归函数总比完成相同功能的非递归函数的执行效率高

o

 B.

递归函数是指自己调用自己的函数

o

 C.

递归函数的主要优点是简化程序设计,使程序易读

o

 D.

递归函数必须有退出递归调用的基本条件,否则函数无法终止运行

正确答案:

BCD

∙36.

(多选)下列关于C语言中变量的说法,正确的是:

()

o

 A.

局部变量前默认会被编译器加上auto

o

 B.

局部变量前如果加static关键字,则表明此变量在函数调用结束后,空间不会被释放

o

 C.

全局变量前加static的意思是说,此变量可以在程序的任何位置访问

o

 D.

局部变量如果没有赋初始值,则其值未知

正确答案:

ABD

∙37.

(多选)下列关于OC中的协议(Protocol),下列说法正确的是:

()

o

 A.

一个类遵守一个协议时,必须实现协议中规定的所有方法

o

 B.

一个类遵守一个协议时,必须实现协议中规定的所有@required区域的方法

o

 C.

一个类遵守一个协议时,可以有选择地实现协议中规定的@optional区域的方法

o

 D.

一个类可以同时遵守多个协议

正确答案:

BCD

∙38.

(多选)下列关于self,说法正确的是:

()

o

 A.

self其实是一个指针

o

 B.

如果在实例方法中,向当前对象发送消息,就需要使用self

o

 C.

self在类方法中不可用,因为类方法中没有当前对象

o

 D.

self在类方法中也可以用,只是在类方法中向self发送消息相当于给类发消息

正确答案:

ABD

∙39.

(多选)对于两个NSString类型的对象进行比较运算:

NSComparisionResultresult=[string1compare:

string2];那么result的值可能是下列哪些值中的一个:

()

o

 A.

NSOrderedAscending

o

 B.

NSOrderedSame

o

 C.

NSOrderedDescending

o

 D.

NSOrderedEqual

正确答案:

ABC

∙40.

(多选)下面是两个变量的定义及初始化,下列说法正确的是:

()char*str1=“abcdef”;constchar*str2=“abcdef”;

o

 A.

如果对str1进行如此操作str1[0]=‘A’;会导致编译错误。

o

 B.

如果对str1进行如此操作str1[0]=‘a’;不会导致编译错误,但在运行时会崩溃。

o

 C.

如果对str2进行如此操作str2[0]=‘A’;会导致编译错误。

o

 D.

如果对str2进行如此操作str2[0]=‘a’;不会导致编译错误,但在运行时会崩溃。

正确答案:

BC

∙41.

(多选)下列关于指针,说法正确的是:

()

o

 A.

无论是什么类型的指针变量,在内存中都是占4个字节

o

 B.

两个同类型的指针不可以相加,但指针可以加上一个整数

o

 C.

两个同类型的指针虽然不可以相加,但可以相减

o

 D.

数组名本身就是一个指针,其值为数组中第一个元素的首地址

正确答案:

BCD

∙42.

(多选)下列关于OC的引用计数器(ReferenceCounting),说法正确的是:

()

o

 A.

向对象发送retain消息,会导致对象的引用计数器加1

o

 B.

向对象发送release消息,会导致对象的引用计数器减1

o

 C.

向对象发送release消息,会导致对象被释放

o

 D.

向对象发送release消息,不一定会导致此对象被释放

正确答案:

ABD

∙43.

(多选)下列关于赋值语句,假设所有的变量已经定义为int类型,那么语法正确的是:

()。

o

 A.

x+y=100;

o

 B.

x++=y++;

o

 C.

a=b=c=d+=1;

o

 D.

a=b==c;

正确答案:

CD

∙44.

(多选)以下代码创建了一个不可变的数组对象:

NSArray*arr=[[NSArrayalloc]initWithObjects:

@”aaa”,@”bbb”,nil];转换成可变数组的做法,正确的是:

()

o

 A.

NSMutableArray*mArr=[NSMutableArrayarrayWithArray:

arr];

o

 B.

NSMutableArray*mArr=(NSMutableArray*)arr;

o

 C.

NSMutableArray*mArr=[arrcopy];

o

 D.

NSMutableArray*mArr=[arrmutableCopy];

正确答案:

AD

∙45.

(多选)请阅读如下代码,假设TRPerson类已经定义:

__weakTRPerson*person1=[[TRPersonalloc]init];TRPerson*person2=person1;__strongTRPerson*person3=person2;NSLog(@”%@”,person3);下列对此代码片段描述正确的是:

()

o

 A.

这段代码的输出结果极有可能是(null)

o

 B.

person1对象创建完后被马上释放,因为没有任何引用保持它

o

 C.

person2和person3变量的值都是nil

o

 D.

代码中有语法错误

正确答案:

ABC

∙46.

(多选)下列关于instancetype关键字,说法正确的是:

()

o

 A.

只能做为方法的返回值类型,不能做为参数的类型

o

 B.

一般只做为初始化方法的返回值或工厂方法的返回值类型

o

 C.

和id类型完全一样

o

 D.

Xcode5之后才支持

正确答案:

AB

∙47.

(多选)下面是一个函数的声明:

int*fa(int*a,void(*p)(int*));下列关于定义函数指针变量及赋值的代码片段,正确的是:

()

o

 A.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1