黑马入学测试一些比较难的题目

本文介绍了iOS编程中的一些C语言基础知识,包括指针、宏定义、异常处理、对象方法等概念,并提供了多项选择题,用于测试读者的理解。涉及到的知识点包括函数指针、内存管理、文件操作、编译时期的概念、Objective-C特性等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#import<stdio.h>

intadd(int p){

   

   return (p++) + (++p);

   

}

 

inttest(int (*p)(int)){

   return p(1);

   

}

intmain(){

   

   int (*p1)(int);

   p1=add;

   int p2 = test(p1);

   printf("%d",p2);

 

   return 0;

   

}

上面输出结果正确的是? ( )----- 单选

 

A1

B2

C3

D4

 

 

fwrite函数的参数不包括以下哪个? ( ) ----- 单选

A、数据容器

B、单个数据字节数

C、文件指针

D、数据

 

以下哪项不是const类型的特点? ( )----- 单选

A、只读

B、在堆区

C、内存空间固定

 

使用宏定义是如何占用内存的? ( )----- 单选

A、不消耗内存

B、用几次也只占一份

C、用不用都只占一份

D、哪里用哪里占一份

 

 

宏定义的效果是什么时候执行的? ( )----- 单选

A、运行时

B、编译前

C、编译时

D、退出时

 

关于文件操作描述中错误的是? ( )----- 单选

A、文件操作前必须先打开文件,使用完毕必须关闭文件

Bfgets读取到NULL的时候就读取结束了

C、字符缓存就是一块内存趋于,用于存储字符,大小由程序员定义

 

c语言和oc之间的关系是? ( ) ----- 单选

Ac语言包含了OC

Bc语言可以兼容oc

Cocc语言加了一层面向对象

Doc包含c语言

 

 

@try …. @catch …@finally @try主要是负责处理什么业务? ( ) ----- 单选

A、异常

B、多态

C、线程

D、内存泄露

 

下列特性中不属于oc特性的是? ( )----- 单选

A、封装型

B、继承型

C、多态类型

D、消息类型

 

类的设计规则是( ) ----- 单选

A、只有类名

B、只有属性不用方法

C、只有行为不用成员

D、需要关心类名、属性、行为

 

在构造方法内部需要写self = [superinit];为什么要这样写呢?( ) ----- 单选

A、这可以保证子类和父类分别开辟两块空间共享

Bsuper才是一个真正的指针,实质是调用了[super message]

C、之所以需要self指向,为了保证正常使用isa指针调用方法

Dself是一个虚拟地址的指针,并不实际存在。

 

关于对象方法说法错误的是( ) ----- 单选

A、对象方法必须以减号开头

B、对象方法只能由对象调用

C、对象方法可以由类名调用

D、对象方法实现在@interface

 

在对象方法中往往可以传递很多参数,方法程序调用,下列传递错误的是( ) ----- 单选

A、对象可以当做方法参数连续传递

B、方法里面可以调用其他方法

C、对象可以作为方法的返回值

D、方法中传递函数名

 

下列说法错误的是? ( ) ----- 单选

Aretain消息:使计数器+1,该方法返回对象本身

Brelease消息:使计数器-1, 并且会立即释放对象

CretainCount消息:获得对象当前的引用计数器值

D、当引用计数器为0的时候对象就会被销毁

 

当你用stringWithFormat来创建一个新NSString对象的时候,系统默认会?( ) ----- 单选

A、这个新创建的字符串对象已经被retain 

B、这个新创建的字符串对象已经被release 

C、调用新创建的字符串的autorelease 方法

D、以上都不对。

 

 

关于autorelease, 说法正确的是?( ) ----- 单选

A、给某个对象发送一条  autorelease   消息时,就会将这个对象加到一个自动释放池中。

B、当自动释放池销毁时,会给池子里面的所有对象发送一条   release   消息。

Cautorelease实际上只是把对 release 的调用延迟了

D、调用autorelease方法时并不会改变对象的计数器,并且没有返回值。

 

 

如果一个类遵从一项协议,这个类的对象成为了声明该协议的对象的代理,那这个类必须实现  ( ) ----- 单选

A、这个协议里的所有required methods

B、这个协议里的所有required methods optional methods 

C、这个协议里至少一个required method

D、以上都不对

 

在定义协议方法的时候, 如果想让一个类必须实现某个方法, 应该怎么做? ( ) ----- 单选

A@optional

B@class

C@private

D@required

 

关于block 的说法错误的是?( ) ----- 单选

Ablock 表示的是一个代码块

Bblock 的名称写在小括号中的 ^ 后面

Cblock 定义完成后会立即执行

D、如果 block 没有参数, 等号右边的小括号可以省略

 

 

下列block代码块书写错误的是? ( ) ----- 多选

^{

NSLog(@”无参,无返回值block1”);

};

 

^(inta){

NSLog(@”无参,有返回值block2”);

returna*a;

}

 

^(int a int b){

NSLog(@”有参,有返回值block3”);

return a+ b;

};

^(){

NSLog(@”无参,无返回值block4”);

};

 

 

有以下代码段, 说法错误的是?( ) ----- 单选

__blockint m = 11;

NSLog(@"1:m= %p",&m);

void(^myBlock)()=^{

       NSLog(@"2:m = %p",&m);

        //可以访问m的值

          int m = 22

       NSLog(@"3:in block m = %d",m);

};

myBlock();

NSLog(@"4:maddr = %p",&m);

}

A、在1位置访问的是栈区的地址

B、在2位置访问的是堆区的地址

C、在4位置访问的是栈区的地址

D、在3位置访问的是栈区的地址

 

 

关于NSMutableString说法正确的是?( ) ----- 单选

A[[NSMutableString alloc]init];使用动态方法创建后不能进行拼接。

BNSMutableString是不可变字符串。

C[NSMutableString string]属于对象方法创建字符串。

DNSMutableString的父类是NSString

 

当一个对象加入到集合中,那么该对象的引用计数会? ( ) ----- 单选

A、加1

B、减1

C、不变

D、无穷大

 

剪切一个文件使用哪个方法? ( ) ----- 单选

A(BOOL)copyItemAtPath:(NSString *)srcPathtoPath:(NSString *)dstPath error:(NSError **)error;

B- (BOOL)removeItemAtPath:(NSString *)patherror:(NSError **)error;

C- (BOOL)moveItemAtPath:(NSString *)srcPathtoPath:(NSString *)dstPath error:(NSError **)error;

D- (BOOL)createDirectoryAtPath:(NSString *)pathwithIntermediateDirectories:(BOOL) createIntermediates attributes:(NSDictionary*)attributes error:(NSError **)error;

 

 

获取沙盒根目录和Document目录的方法分别是?( ) ----- 单选

ANSSearchPathForDirectoriesInDomains(NSDocumentDirectory,   NSUserDomainMask, YES);

NSHomeDirectory()

BNSHomeDirectory()

NSSearchPathForDirectoriesInDomains(NSCoreServiceDirectory,   NSUserDomainMask, YES);

CNSHomeDirectory()

NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,   NSUserDomainMask, YES);

DNSHomeDirectory()

NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,   NSSystemDomainMask, YES);

 

 

在以下关于C语言的注释的叙述中,错误的是? ( ) ----- 单选

A、注释可用"/*""*/"形式表示,也可用"//"形式表示

B、编译器在编译一个程序时,将跳过注释,不对其进行处理

C、编译器在编译一个程序时,可发现注释中的单词拼写错误

D、程序中注释的多少不会影响所生成的可执行文件的长度

关于多行注释理解正去的是? ( ) ----- 单选

 A、其中也可以包含多行注释

 B、不能注释单行

 C、可以包含单行注释

 D、最多只能注释100

 

Xcode4.0版本之后使用的是? ( ) ----- 单选

 AGCC编译器

 BClang

 CMde

 DPande

 

对静态数据理解正确的是? ( ) ----- 单选

 A、静态数据是储存在CPU中的

 B、静态数据在断电后就会丢失

 C、静态数据是保存在硬盘中的

 D、静态数据在硬件破坏后也存在

 

下列哪个符号是逻辑运算符号?( ) ----- 单选

 A、!

 B^

 C$

 D+

整型在64位编译器中占? ( ) ----- 单选

 A14个字节

 B2个字节

 C4个字节

 D1个字节

 

十六进制数0x1DA2转换成二进制数是多少( )

 A0b0b01011011011010

 B0b0001110100101010

 C0b0001110110100010

 D0b0001010110100010

 

若有定义:int  bb[8];。则以下表达式中不能代表数组元bb[1]的地址的是? ( ) ----- 单选

 A&bb[0]+1

 B&bb[1]

 C&bb[0]++

 Dbb+1

以下对一维数组m进行错误初始化的是? ( ) ----- 单选

 Aint m[10]=(0,0,0,0) ;

 Bint m[10]={ };

 Cint m[ ]={0};

 Dint m[10]={10*2};

 

以下程序段给数组所有的元素输入数据,请选择正确答案填入? ( ) ----- 单选

    #include<stdio.h>

    main()

    {

        inta[10],i=0;

       while(i<10) scanf("%d",________ );

       

    }

 Aa+(i++)

 B&a[i+1]

 Ca+i 

 D&a[++i]

 

关于全局变量的说法中错误的是? ( ) ----- 单选

 A、在所有的函数外部定义的变量,叫全局变量

 B、所有的函数都能合法地访问

 C、默认的初始值是0

 D、如果函数内有同名的变量,就会使用函数内部的变量

 

下面说法错误的是? ( ) ----- 单选

 A、结构体使用在需要把相关联的不同数据类型封装起来一起使用

 B、数组只能存放同一种类型的数据

 C、同一个作用域内可以定义重复的结构体类型和结构变量

 D、可同时在函数内外定义同一个类型,使用同样遵循就近原则

 

 

 

以下对二维数组进行正确初始化的是? ( ) ----- 单选

 Aint a[2][]={{1,2},{3,4}}

 Bint a[][3]={1,2,3,4,5,6};

 Cint a[2][]={1,2,3,4,5,6};

 Dint a[2][3]={{1,2},{3,4},{5,6};

 

关于结构体说法错误的是? ( ) ----- 单选

 A、结构体变量分配内存空间遵循对齐原则

 B、结构体变量内存分配的字节数大小等于内部元素所占字节数原始大小之和

 C、结构体变量内存分配的字节数大小大于内部元素在当前编译环境原始所占字节数大小之和

 D、结构体变量内存分配的字节数一定是最大字节数元素所占字节数的整数

 

 

 

 

#import <stdio.h>

int add(int p){

    

    return (p++) + (++p);

    

}

 

int test(int (*p)(int)){

    return p(1);

    

}

int main(){

    

    int (*p1)(int);

    p1=add;

    int p2 = test(p1);

    printf("%d",p2);

 

    return 0;

    

}

上面输出结果正确的是? ( ) ----- 单选

 A1

 B2

 C3

 D4

 

 

p++ p=1

此时p=2 ++p p=3

 

 

 

以下程序段给数组所有的元素输入数据,请选择正确答案填入? ( ) ----- 单选

    #include<stdio.h>

    main()

    {

        inta[10],i=0;

       while(i<10) scanf("%d",________ );

       

    }

 Aa+(i++)

 B&a[i+1]

 Ca+i 

 D&a[++i]

 

 

下面代码的输出结果是? ( ) ----- 单选

int a;

intgetResult(int a){

return a++;  

}

int main(){

a = getResult(a);

printf(“a=%d”,a);

{

int a = 10;

a = getResult(a);    

}

 

printf(“a=%d”,a);           

}

 A0,10

 B1,10

 C0,0

 D0,11

 

 

 

以下程序段给数组所有的元素输入数据,请选择正确答案填入? ( ) ----- 单选

    #include<stdio.h>

    main()

    {

        inta[3],i=0;

       while(i<3){

           scanf("%d",___);

           printf("%d\n",___);

           i++;  

        }

    }

 A&a[i],a[i] 

 B&a[i+1],&a[i] 

 Ca+i ,a

 D&a[++i],a[i]

 

 

 

下面说法错误的是? ( ) ----- 单选

 A、结构体不能嵌套定义

 B、结构体可以定义在函数内部,也可以定义在函数的内部

 C、同一个作用域内不可重复定义结构体

 D、函数内外定义同名的结构体遵循就近原则

 

OC当中的文档注释的格式是? ( ) ----- 单选

 A//

 B///

 C/**/

 D/** */

 

@try …. @catch …@finally @try主要是负责处理什么业务? ( ) ----- 单选

 A、异常

 B、多态

 C、线程

 D、内存泄露

 

 

下列特性中不属于oc特性的是? ( ) ----- 单选

 A、封装型

 B、继承型

 C、多态类型

 D、消息类型

Objective-C语言中方括号“[]”的作用,下列说法错误的是( ) ----- 单选

 A、用于通知某个对象该做什么。

 B、方括号内第一项是对象,其余部分是你需要对象执行的操作。

 C、在OC中通知对象执行某种操作,称为发消息,也叫调用方法。

 D、方括号可以为空。

 

 

 

 

匿名对象作为方法参数优点( ) ----- 单选

 A、可以简化代码     

 B、可以节省大量空间

 C、可以使用无限次

 D、不会被销毁

 

 

以下有关构造方法说法错误的是( ) ----- 单选

 A、构造方法是特殊的类方法

 B、它是用来初始化对象的

 C、初始化后内部成员变量都有默认初始值

一定要先调用父类的构造方法

 

在方法调用过程中出现unrecognized selector sent to instance 0x100103410' 的意思是() ----- 单选

 A、函数找不到

 B、成员变量名出错,找不到

 C、类名找不到

 D、方法找不到

 

 

描述继承使用说法正确的?( ) ----- 单选

 A、子类继承父类之后可以使用父类所有的变量

 B、子类可以调用父类公开的方法

 C、子类可以访问父类私有变量

 D、子类可以调用父类私有类方法

 

关于派生解释正确的是?( ) ----- 单选

 A、派生是父类向下产生子类的过程

 B、派生是oc特有方法

 C、派生是c语言中继承过来的

 D、派生的对象可以调用父类任意方法

 

 

文件操作:将文件A中的内容拷贝到B中正确的说法是? ( ) ----- 单选

 AA是输入, B是输出

 BA是输出,B是输出

 CA是输出, B是输入

 DA是输入,B是输入

 

关于NSMutableString说法正确的是? ( ) ----- 单选

 A[[NSMutableString alloc]init];使用动态方法创建后不能进行拼接。

 BNSMutableString是不可变字符串。

 C[NSMutableString string]属于对象方法创建字符串。

 DNSMutableString的父类是NSString

-(NSComparisonResult)compare:(NSString *)string; 返回值可能错误是? ( ) ----- 单选

 ANSOrderedSame

 BNSOrderedAscending

 CNSOrdered

 DNSOrderedDescending

 

 

下列不属于NSDictionary创建的方法的是? ( ) ----- 单选

 A+ (instancetype)dictionary;

 B+ (instancetype)dictionaryWithObject:(id)objectforKey:(id <NSCopying>)key

 C+ (instancetype)dictionaryWithObjectsAndKeys

 D- (id)objectForKey:(id)aKey

 

 

通过什么方式可以辅助生成 block 代码? ( ) ----- 单选

 A__block

 Bblock()

 CinlineBlock

 Dtypedef block

 

下列对Category描述错误的是? ( ) ----- 单选

 ACategoryOC中的分类

 BCategory别名也可称为类别和类目

 CCategory可以用来扩充属性和方法

 D、分类扩充的方法不改变原类

 

block不可以作为下面的那个场景使用? ( ) ----- 单选

 A、函数参数

 B、函数返回值

 C、变量

 D、常量

 

关于 id instancetype 的区别, 哪一项是 instancetype 的优点? ( ) ----- 单选

 Ainstancetype只能作为函数或者方法的返回值

 Bid能作为方法或者函数的返回值、参数类型,也能用来定义变量

 Cinstancetype 可以用来定义变量

 D、能根据调用方法的类或对象指定返回值的具体类型

 

下列block代码块书写错误的是? ( ) ----- 多选

^{

NSLog(@”无参,无返回值block1”);

};

^(int a){

NSLog(@”无参,有返回值block2”);

return a*a;

}

^(int a int b){

NSLog(@”有参,有返回值block3”);

return a + b;

};

^(){

NSLog(@”无参,无返回值block4”);

};

 

NSDate的作用?( ) ----- 单选

 A、分配内存

 B、定义时间 

 C、归档

 D、传递参数

 

下面哪些不是copy的特点? ( ) ----- 单选

 A、修改源文件的内容,不会影响副本文件

 B、修改副本文件的内容,会影响源文件

 COC中的copy,就是指的对象的拷贝 

 D、修改源对象的属性和行为,不会影响副本对象

 

当一个对象加入到集合中,那么该对象的引用计数会? ( ) ----- 单选

 A、加1

 B、减1

 C、不变

 D、无穷大

 

 

NSRage 初始化错误的方式是? ( ) ----- 单选

 ANSRange r4 = NSMakeRange(3, 3);

 BNSRange range = (NSRange *){5,3};

 CNSRange r3 = {.location = 3,.length = 5};

 DNSRange range;

   range.location = 3;range.length =2

 

 

哪个不是NSNumber的方法?( ) ----- 单选

 A+ (NSNumber *)numberWithInt:(int)value;

 B+ (NSNumber *)numberWithDouble:(double)value;

 C+ (NSNumber *)numberWithBool:(BOOL)value;

 D+ (NSNumber *)numberWithStruct:(BOOL)struct;

 

 

剪切一个文件使用哪个方法? ( ) ----- 单选

 A(BOOL)copyItemAtPath:(NSString *)srcPathtoPath:(NSString *)dstPath error:(NSError **)error;

 B- (BOOL)removeItemAtPath:(NSString *)patherror:(NSError **)error;

 C- (BOOL)moveItemAtPath:(NSString *)srcPathtoPath:(NSString *)dstPath error:(NSError **)error;

 D- (BOOL)createDirectoryAtPath:(NSString *)pathwithIntermediateDirectories:(BOOL) createIntermediates attributes:(NSDictionary*)attributes error:(NSError **)error;

 

关于(BOOL)copyItemAtPath:(NSString*)srcPath toPath:(NSString *)dstPath error:(NSError **)error;说法正确的是? ( ) ----- 单选

 A、拷贝,如果目标目录已经存在同名文件,则无法拷贝

 B、拷贝,如果目标目录已经存在同名文件,也可拷贝

 C、拷贝,如果目标目录不存在同名文件,则无法拷贝

 D、删除,如果目标目录已经存在同名文件,则删除

关于dealloc方法说法正确的是? ( ) ----- 单选

 A、一般在ARC环境下重写  

 B、当对象被释放的时候会系统会自动调用

 C、可以手动调用[self dealloc] 

 D、在MRC环境下可以不用写[super dealloc

 

关于对象指针说法错误的是? ( ) ----- 单选

 A、默认情况下任何指针都是强指针

 B、要让一个指针可以成为弱指针可以使用 __weak 来修饰

 C、给已经被释放的对象发送消息会报野指针错误

 D、由于空指针没有指向任何东西所以给空指针发送消息会报错

 

 

下列关于内存管理原则说法错误的是? ( ) ----- 单选

 A、只要你想使用这个对象,那么就应该让这个对象的引用计数器+1

 B、如果你通过alloc,new,copy来创建了一个对象,那么你就必须调用release或者 autorelease方法

 C、不是你创建的对象你也应该去负责对它进行 release

 D、谁 retain  release

 

下列对autoreleasepool描述错误的是?( ) ----- 单选

 Aautoreleasepool是一个特殊的栈区内存空间

 B、放入autoreleasepool中的对象先进后出

 C、使用release会自动将对象加入自动释放池

 D、当自动释放池销毁的时候会对里面的对象做一次或多次release操作

 

 

关于autorelease, 说法正确的是? ( ) ----- 单选

 A、给某个对象发送一条  autorelease   消息时,就会将这个对象加到一个自动释放池中。

 B、当自动释放池销毁时,会给池子里面的所有对象发送一条   release   消息。

 Cautorelease实际上只是把对 release 的调用延迟了

 D、调用autorelease方法时并不会改变对象的计数器,并且没有返回值。

 

计算机中内存有5个区,静态区,代码区,堆区,常量区,栈区,下面说法错误的是? ( ) ----- 单选

 A1,2,’itcast’存放在常量区

 B、通过指针定义的字符串存放在常量区

 C、所有的常量都是存储在常量区

 D、当变量被const修饰的时候,存储在常量区

 

若有定义:int  bb[8];。则以下表达式中不能代表数组元bb[1]的地址的是? ( ) ----- 单选

 A&bb[0]+1

 B&bb[1]

 C&bb[0]++

 Dbb+1

 

关于全局变量的说法中错误的是? ( ) ----- 单选

 A、在所有的函数外部定义的变量,叫全局变量

 B、所有的函数都能合法地访问

 C、默认的初始值是0

 D、如果函数内有同名的变量,就会使用函数内部的变量

下面说法错误的是? ( ) ----- 单选

 A、全局变量的定义位置在所有的函数之外,全局变量归应用程序所有

 B、函数内部有与全局变量同名的使用函数内部的

 C、全局变量和局部变量都存储在栈区

 D、全局变量的生命周期随着程序,而局部变量的生命周期随着所定义在的函数

 

 

下列哪个协议是基协议? ( ) ----- 单选

 A<NSCoding>

 B<NSCopying>

 C<NSObject>

 D<NSMutableCopying>

 

 

关于id instancetype 的区别, 哪一项是 instancetype 的优点? ( ) ----- 单选

 Ainstancetype只能作为函数或者方法的返回值

 Bid能作为方法或者函数的返回值、参数类型,也能用来定义变量

 Cinstancetype 可以用来定义变量

 D、能根据调用方法的类或对象指定返回值的具体类型

 

 

关于block的说法错误的是? ( ) ----- 单选

 Ablock 表示的是一个代码块

 Bblock 的名称写在小括号中的 ^ 后面

 Cblock 定义完成后会立即执行

 D、如果 block 没有参数, 等号右边的小括号可以省略

 

 

 

有以下代码段, 说法错误的是? ( ) ----- 单选

__block int m = 11;

NSLog(@"1:m = %p",&m);

void (^myBlock)()=^{

        NSLog(@"2:m =%p",&m);

        //可以访问m的值

         int m = 22

        NSLog(@"3:inblock m = %d",m);

};

myBlock();

NSLog(@"4:m addr = %p",&m);

}

 A、在1位置访问的是栈区的地址

 B、在2位置访问的是堆区的地址

 C、在4位置访问的是栈区的地址

 D、在3位置访问的是栈区的地址

 

 

关于类扩展, 错误的是? ( ) ----- 单选

 A、类扩展是写在 .m 文件中的

 B、可以在类扩展中为某个类扩充一些方法

 C"类扩展"对比"分类", 就少了一个分类名称, 因此也有人称它为"匿名分类"

 D、外界可以访问类扩展中声明的属性和方法

黑马程序员训练营入学考试题 1、方法中的内部类能不能访问方法中的局部变量,为什么? 2、编写一个类,在main方法中定义一个Map对象(采用泛型),加入若干个对象,然后遍历并打印出各元素的key和value。 3、取出一个字符串中字母出现的次数。如:字符串:"abcdekka27qoq" ,输出格式为:a(2)b(1)k(2)... 4、有五个学生,每个学生有3门课(语文、数学、英语)的成绩,写一个程序接收从键盘输入学生的信息,输入格式为:name,30,30,30(姓名,三门课成绩),然后把输入的学生信息按总分从高到低的顺序写入到一个名称"stu.txt"文件中。要求:stu.txt文件的格式要比较直观,打开这个文件,就可以很清楚的看到学生的信息。 5、编写一个程序,获取10个1至20的随机数,要求随机数不能重复。 6、编写三各类Ticket、SealWindow、TicketSealCenter分别代表票信息、售票窗口、售票中心。售票中心分配一定数量的票,由若干个售票窗口进行出售,利用你所学的线程知识来模拟此售票过程。 7、写一方法,打印等长的二维数组,要求从1开始的自然数由方阵的最外圈向内螺旋方式地顺序排列。 如: n = 4 则打印: 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 ? 8、编写一个程序,它先将键盘上输入的一个字符串转换成十进制整数,然后打印出这个十进制整数对应的二进制形式。这个程序要考虑输入的字符串不能转换成一个十进制整数的情况,并对转换失败的原因要区分出是数字太大,还是其中包含有非数字字符的情况。提示:十进制数转二进制数的方式是用这个数除以2,余数就是二进制数的最低位,接着再用得到的商作为被除数去除以2,这次得到的余数就是次低位,如此循环,直到被除数为0为止。其实,只要明白了打印出一个十进制数的每一位的方式(不断除以10,得到的余数就分别是个位,十位,百位),就很容易理解十进制数转二进制数的这种方式。 9、28人买可乐喝,3个可乐瓶盖可以换一瓶可乐,那么要买多少瓶可乐,够28人喝?假如是50人,又需要买多少瓶可乐?(需写出分析思路) 10、有100个人围成一个圈,从1开始报数,报到14的这个人就要退出。然后其他人重新开始,从1报数,到14退出。问:最后剩下的是100人中的第几个人?
1.方法中的内部类能不能访问方法中的局部变量,为什么? 2.分析运行结果,说明原理。(没有分析结果不得分) import java.util.ArrayList; class Data { int val; } public class Test { public static void main(String args[]) { Data data = new Data(); ArrayList list = new ArrayList(); for (int i = 100; i < 103; i++) { data.val = i; list.add(data); } for (Data d : list) { System.out.println(d.val); } } } 3.编写一个类,在main方法中定义一个Map对象(采用泛型), * 加入若干个对象,然后遍历并打印出各元素的key和value。 4.编写一个类,在main方法中定义一个Map对象(采用泛型), * 加入若干个对象,然后遍历并打印出各元素的key和value。 5.定义一个文件输入流,调用read(byte[] b)方法将exercise.txt * 文件中的所有内容打印出来(byte数组的大小限制为5)。 6.存在一个JavaBean,它包含以下几种可能的属性: 1:boolean/Boolean 2:int/Integer 3:String 4:double/Double 属性名未知,现在要给这些属性设置默认值,以下是要求的默认值: String类型的默认值为字符串 www.itheima.com int/Integer类型的默认值为100 boolean/Boolean类型的默认值为true double/Double的默认值为0.01D. 只需要设置带有getXxx/isXxx/setXxx方法的属性,非JavaBean属性不设置,请用代码实现 7.有一个类为ClassA,有一个类为ClassB,在ClassB中有一个方法b,此方法抛出异常, * 在ClassA类中有一个方法a,请在这个方法中调用b,然后抛出异常。 * 在客户端有一个类为TestC,有一个方法为c ,请在这个方法中捕捉异常的信息。 * 完成这个例子,请说出java中针对异常的处理机制。 8.编写一个程序,获取10个1至20的随机数,要求随机数不能重复。 9.编写一个程序,它先将键盘上输入的一个字符串转换成十进制整数, * 然后打印出这个十进制整数对应的二进制形式。 * 这个程序要考虑输入的字符串不能转换成一个十进制整数的情况, * 并对转换失败的原因要区分出是数字太大,还是其中包含有非数字字符的情况。 * 提示:十进制数转二进制数的方式是用这个数除以2, * 余数就是二进制数的最低位,接着再用得到的商作为被除数去除以2, * 这次得到的余数就是次低位,如此循环,直到被除数为0为止。 * 其实,只要明白了打印出一个十进制数的每一位的方式 * (不断除以10,得到的余数就分别是个位,十位,百位), * 就很容易理解十进制数转二进制数的这种方式。 10.有100个人围成一个圈,从1开始报数,报到14的这个人就要退出。然后其他人重新开始,从1报数,到14退出。 * 问:最后剩下的是100人中的第几个人?
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值