黑马程序员技术交流社区
标题: 今天提交了黑马的入学考试题 ,分享下思路 !! [打印本页]
作者: 任子杰 时间: 2015-11-4 23:54
标题: 今天提交了黑马的入学考试题 ,分享下思路 !!
黑马入学测试题详解
昨天申请的入学测试,做了大概半天左右,把代码分享出来,不足之处望指点,不要抄代码,理解思路最重要
目前技术分不够,看完评论下谢谢
顺便问下有没IOS12月5日就业班的小伙伴,说不定我们是同学{:2_31:}
- <font size="3">第一至五题:
- 1、 Self和super的区别?
- 答:self:当前方法调用者,调用自己的方法,如果没有去父类找。谁调用self,
- self就代表谁。self在类方法中指当前类,实例方法中指当前实例对象.
- super表示调用父类方法.
- 2、 定义属性时候,什么情况下用copy、assign、retain、strong、week
- 答:copy:需要使用对象数据,但不想影响原对象内容是可使用cpoy
- 用于NSString,block等类型在属性set方法中的作用是
- release旧值,copy新值
- assign:直接赋值,用于基本数据类型,定义int double float时用assign
- retain声明 在MRC下要增加对象的引用计数时用retain,用于oc对象类型
- set方法中retain的作用release旧值retain新值
- strong 相当于retain会将对象的引用计数加1,让对象不容易死
- week 弱指针,适用于OC对象,指向的对象会被立即释放 将指针赋值为nil
- //说明:
- //因为test2是对象方法 用self表示当前类自己
- //test3实例方法 self表示当前实例对象
- 3、 下面第一个self指向的是___当前Person类____,第二个self指向的是__Person中的实例变量_age_______.
- #import <Foundation/Foundation.h>
- @interface Person : NSObject
- {
- int _age;
- }
- + (void)test1;
- + (void)test2;
- - (void)text3;
- @end
- @implementation Person
- + (void)test1
- {
- NSLog(@"调用了test1方法");
- }
- + (void)test2
- {
- [self test1];
- }
- - (void)text3
- {
- NSLog(@"%d",self->_age);
- }
- @end
- // .语法相当于隐式调用了对象的set方法 系统自动调用
- 4、 下面p.age = 10内部做了哪部操作(A)。
- #import <Foundation/Foundation.h>
- #import "Person.h"
- int main(int argc, const char * argv[])
- {
- Person *p = [Person new];
- p.age = 10;
- int a = p.age;
- return 0;
- }
- A. [p setAge:10]
- B. [p age]
- C. 以上都做
- D. 什么也没做
- </font>
复制代码5,
- #import <Foundation/Foundation.h>
- //5、 编写一个程序,用于接受从终端输入的整数,提取并用英文显示这个数的每一位数。例如输入112 输出 One One Two。(Objective-C)
- int main(int argc, const char * argv[]) {
- @autoreleasepool {
-
- //创建变量,存储用户输入的数字
- int input;
- //创建数组,存放英文数字
- NSArray *array=@[@"zero",@"one",@"two",@"three",@"four",@"five" ,@"six",@"seven",@"eight",@"nine"];
- //创建可变字符串,存放结果
- NSMutableString *result=[NSMutableString string];
- //接收用户输入
- scanf("%d",&input);
- //转化为OC字符串
- NSString *str=[NSString stringWithFormat:@"%d",input];
-
- for (int i=0; i<str.length; i++) {
-
- //循环取出每一个数字 由于返回值是char字符串将字符编码-48再转换为int数据
- input=(int)[str characterAtIndex:i]-48;
- //追加每个字符
- [result appendFormat:array[input]];
- //追加空格
- [result appendFormat:@" "];
-
- }
- //输出
- NSLog(@"%@",result);
-
-
- }
- return 0;
- }
复制代码
看完的好心人评论下,谢谢,目前正在赚技术分。

后续在下面
作者: 任子杰 时间: 2015-11-4 23:55
6, #import <Foundation/Foundation.h> // 6、 创建一个NSDictionary对象,随便往里面添加内容,然后通过代码产生可变和不可变副本,这些复制是深复制还是浅复制?(Objective-C) int main(int argc, const char * argv[]) { @autoreleasepool { NSDictionary *dict=[NSDictionary dictionaryWithObject:@"zhangsan" forKey:@"zs"]; NSLog(@"dict=%p",dict); //这是浅复制 NSMutableDictionary *dictCopy1=[dict copy]; //因为是浅复制,所以copy后的对象不能修改 ,这句代码执行会报错 // [dictCopy1 setValue:@"wangwu" forKey:@"wu" ]; NSLog(@"dictCopy1=%p",dictCopy1); //这是深复制 NSMutableDictionary *dictCopy2=[dict mutableCopy]; //深复制,copy后对象可以修改 执行成功! [dictCopy2 setValue:@"wangwu" forKey:@"wu"]; NSLog(@"%@",dictCopy2); NSLog(@"%p",dictCopy2); } return 0; } 7, #import <Foundation/Foundation.h> //7、 现有如下定义的字符串: NSString * str=@“iphoneAndroid”,能不能对该字符串进行修改,如果能,请输出删除Android后的新字符串。(Objective-C) int main(int argc, const char * argv[]) { @autoreleasepool { /*思路:原本 NSString * str=@“iphoneAndroid”是不可变字符串,不能被修改, 最简单的方法直接截取字符串即可。也可借用copy深复制后修改或将其转换为可变字符串修改或者借用可变字符串*/ //方法一 NSString * str=@"iphoneAndroid"; //从头开始截取6个字符字符串 NSString *subString=[str substringToIndex:6]; str=subString; NSLog(@"str=%@",str); //方法二 NSString * str1=@"iphoneAndroid"; //将str放入可变字符串 NSMutableString *strNew=[NSMutableString stringWithFormat:@"%@",str1]; //查找子字符串位置 注意:结构体不能加*号! NSRange range=[strNew rangeOfString:@"Android"]; //根据查找到的索引删除字符串内容 [strNew deleteCharactersInRange:range]; //将删除后的字符串赋值给原字符串 str1=strNew; NSLog(@"str1=%@",str1); //方法三 NSString * str2=@"iphoneAndroid"; NSMutableString *strNew2=[str2 mutableCopy]; NSRange r=NSMakeRange(6, 7); [strNew2 deleteCharactersInRange:r]; NSLog(@"str2=%@",strNew2); } return 0; } 8, #import <Foundation/Foundation.h> //8、 利用分类给NSString扩展3个方法(Objective-C) //1> 字符串反转(比如@”123”调用方法后返回@”321”) //2> 计算英文字母的个数(比如@”5435abc54abc3AHJ5”调用方法后返回的是9) //3> 去除字符串两端空格(比如@” 1235 45 ”调用方法后返回@”1235 45”) #import "NSString+Extension.h" int main(int argc, const char * argv[]) { @autoreleasepool { //1,字符串反转 NSString *str=[[NSString alloc]init]; str=[str CharacterInversion:@"12345"]; NSLog(@"%@",str); //2,计算英文字母的个数 NSString *str2=@"5435abc54abc3AHJ5"; NSInteger i=[str2 EnglishCount:str2]; NSLog(@"%li",i); //3,去除字符串两端空格 NSString *str3=@" 1235 45 "; str3=[str3 clearSpace:str3]; NSLog(@"%@",str3); } return 0; } @interface NSString (Extension) //声明字符反转方法 -(NSString *)CharacterInversion:(NSString *)str; //计算英文字母方法 -(NSInteger)EnglishCount:(NSString *)str; //去除字符串两端空格方法 -(NSString *)clearSpace:(NSString *)str; @end #import "NSString+Extension.h" @implementation NSString (Extension) //字符反转方法 -(NSString *)CharacterInversion:(NSString *)str{ //创建可变数组存放结果 NSMutableArray *array=[NSMutableArray array]; NSString *strNew; //注意characterAtIndex:是从0开始计算的因此这里长度要减1 for (NSInteger i=str.length-1; i>=0; i--) { //将循环到的每个字符转换成oc字符 strNew=[NSString stringWithFormat:@"%c",[str characterAtIndex:i]]; //将字符累加到数组 [array addObject:strNew]; } //将数组转换成字符串 用空格隔开 return [array componentsJoinedByString:@" "]; } //计算英文字母方法 -(NSInteger)EnglishCount:(NSString *)str{ char c; NSInteger count=0; for (NSInteger i=0;i<str.length;i++) { //循环取出每个字符 c=[str characterAtIndex:i]; //判断是否是字母 是count累加 if ((c >='a' && c<='z')|| (c >='A' && c<='Z')) { count++; } } return count; } //去除字符串两端空格方法 -(NSString *)clearSpace:(NSString *)str{ //因为要去除空格因此将字符串装换为可变字符串 NSMutableString *str1 = [[NSMutableString alloc] initWithString:str]; //字符串不能是单个空格 if (![str isEqual:@" "]) { //循环判断第一个字符是否是空格 while ([str1 characterAtIndex:0] == ' ') { //从开始位置删除1个字符 [str1 deleteCharactersInRange:NSMakeRange(0, 1)]; } while ( [str1 characterAtIndex:([ str1 length]-1) ] == ' ') { [str1 deleteCharactersInRange:NSMakeRange(([str1 length]-1), 1)]; } } return str1; } @end 9, //9、 现在有一个有序的数组,要求用户输入一个整数放到数组中还保证这个数组是有序的。例如原数组为@[@1,@3,@5,@7,@9]; 插入8之后为@[@1,@3,@5,@7,@8,@9];(Objective-C) int main(int argc, const char * argv[]) { @autoreleasepool { NSMutableArray *array = [NSMutableArray arrayWithArray:@[@1,@3,@5,@7,@9]]; long count= array.count; NSLog(@"请输入一个整数:"); int i; scanf("%d",&i); //将int型数据转换成OC中的NSNumber型 NSNumber *num=[NSNumber numberWithInt:i]; for (int i=0; i<count; i++) { //判断如果输入的数字与当前数字是升序的关系 即结果小于等于0 //将输入的字符插入到当前循环到的数组下标位置 if ([num compare:array[i]]<=0) { [array insertObject:num atIndex:i]; break; } //经过上面循环如果字符串长度无变化 说明输入的数字大于数组的数字追加到数组末尾 if (array.count==count) { [array addObject:num]; } } NSLog(@"%@",array); } return 0; } 10, #import <Foundation/Foundation.h> //10、 定义一个学生类,需要有姓名,年龄,考试成绩三个成员属性,创建5个对象,属性可以任意值。(Objective-C) // //1) 不使用@property,手动编写他们的访问器方法(getter和setter),注意内存管理(手动管理内存) //2) 增加一个便利构造器(快速构造器) //3) 使用NSLog输出学生对象时,输出信息格式为:My Name Is XXX Age Is XXX Score Is XXX //4) 对5个学生对象按照成绩—》年龄—》姓名优先级排序(成绩相同按照年龄排序,成绩年龄相同按照姓名排序(5个学生的属性值自己随便设定,姓名不考虑中文,按26个大小字母排序)) #import "Student.h" int main(int argc, const char * argv[]) { @autoreleasepool { //调用自定义构造方法给属性赋值 Student *s1=[[Student alloc]initWithName:@"小明" andAge:15 andScore:45]; Student *s2=[[Student alloc]initWithName:@"王五" andAge:15 andScore:45]; Student *s3=[[Student alloc]initWithName:@"赵四" andAge:18 andScore:90]; Student *s4=[[Student alloc]initWithName:@"李明" andAge:16 andScore:80.9]; Student *s5=[[Student alloc]initWithName:@"张三" andAge:18 andScore:90]; //将对象放入数组 NSArray *array=[NSArray arrayWithObjects:s1,s2,s3,s4,s5, nil]; //调用方法 执行排序 NSArray *arrayNew=[array sortedArrayUsingSelector:@selector(compareStu:)]; //采用快速枚举遍历数组 for (Student *stu in arrayNew) { //由于在Student类中已经重写desciption方法,直接输出即可 NSLog(@"%@",stu); } //用完销毁对象 [s1 release]; [s2 release]; [s3 release]; [s4 release]; [s5 release]; } return 0; } #import <Foundation/Foundation.h> @interface Student : NSObject{ NSString *_name; int _age; int _score; } //手动创建get、set方法 -(void)setName:(NSString *)name; -(NSString *)name; -(void)setAge:(int)age; -(int)age; -(void)setScore:(int)score; -(int)score; //自定义构造方法 初始化成员变量 -(id)initWithName:(NSString *)name andAge:(int)age andScore:(int)score; //用当前对象与传入对象比较 -(NSComparisonResult)compareStu:(Student *)student; @end #import "Student.h" @implementation Student -(void)dealloc{ //因为name在set方法引用计数加了1,这里要release一次才能释放对象 [_name release]; [super dealloc]; NSLog(@"Student delloc"); } -(void)setName:(NSString *)name{ //如果传进来的nam不等于当前对象name,让当前对象release一次, //传入对象引用计数加1 赋值给当前对象 if (_name!=name) { [_name release]; _name=[name retain]; } _name=name; } -(NSString *)name{ return _name; } -(void)setAge:(int)age{ _age=age; } -(int)age{ return _age; } -(void)setScore:(int)score{ _score=score; } -(int)score{ return _score; } -(id)initWithName:(NSString *)name andAge:(int)age andScore:(int)score{ //判断父类初始化成功 if (self=[super init]) { _name=name; _age=age; _score=score; } return self; } //重写desciption方法,按格式输入内容 -(NSString *)description{ return [NSString stringWithFormat:@"My Name Is %@ Age Is %d Score Is %d",_name,_age,_score]; } -(NSComparisonResult)compareStu:(Student *)student{ //比较成绩 NSComparisonResult result=[[NSNumber numberWithInt:student.score] compare:[NSNumber numberWithInt:self.score]]; //成绩相等,比较年龄 if (result==NSOrderedSame) { result=[[NSNumber numberWithInt:student.age]compare: [NSNumber numberWithInt:self.age]]; //年龄相等 比较姓名 if (result==NSOrderedSame) { result=[self.name compare:student.name]; } } //返回结果 return result; } @end 看完的好心人评论下,谢谢,目前正在赚技术分。
作者: 任子杰 时间: 2015-11-4 23:57
6,
#import <Foundation/Foundation.h>
// 6、 创建一个NSDictionary对象,随便往里面添加内容,然后通过代码产生可变和不可变副本,这些复制是深复制还是浅复制?(Objective-C)
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSDictionary *dict=[NSDictionary dictionaryWithObject:@"zhangsan" forKey:@"zs"];
NSLog(@"dict=%p",dict);
//这是浅复制
NSMutableDictionary *dictCopy1=[dict copy];
//因为是浅复制,所以copy后的对象不能修改 ,这句代码执行会报错
// [dictCopy1 setValue:@"wangwu" forKey:@"wu" ];
NSLog(@"dictCopy1=%p",dictCopy1);
//这是深复制
NSMutableDictionary *dictCopy2=[dict mutableCopy];
//深复制,copy后对象可以修改 执行成功!
[dictCopy2 setValue:@"wangwu" forKey:@"wu"];
NSLog(@"%@",dictCopy2);
NSLog(@"%p",dictCopy2);
}
return 0;
}
7,
#import <Foundation/Foundation.h>
//7、 现有如下定义的字符串: NSString * str=@“iphoneAndroid”,能不能对该字符串进行修改,如果能,请输出删除Android后的新字符串。(Objective-C)
int main(int argc, const char * argv[]) {
@autoreleasepool {
/*思路:原本 NSString * str=@“iphoneAndroid”是不可变字符串,不能被修改,
最简单的方法直接截取字符串即可。也可借用copy深复制后修改或将其转换为可变字符串修改或者借用可变字符串*/
//方法一
NSString * str=@"iphoneAndroid";
//从头开始截取6个字符字符串
NSString *subString=[str substringToIndex:6];
str=subString;
NSLog(@"str=%@",str);
//方法二
NSString * str1=@"iphoneAndroid";
//将str放入可变字符串
NSMutableString *strNew=[NSMutableString stringWithFormat:@"%@",str1];
//查找子字符串位置 注意:结构体不能加*号!
NSRange range=[strNew rangeOfString:@"Android"];
//根据查找到的索引删除字符串内容
[strNew deleteCharactersInRange:range];
//将删除后的字符串赋值给原字符串
str1=strNew;
NSLog(@"str1=%@",str1);
//方法三
NSString * str2=@"iphoneAndroid";
NSMutableString *strNew2=[str2 mutableCopy];
NSRange r=NSMakeRange(6, 7);
[strNew2 deleteCharactersInRange:r];
NSLog(@"str2=%@",strNew2);
}
return 0;
}
8,
#import <Foundation/Foundation.h>
//8、 利用分类给NSString扩展3个方法(Objective-C)
//1> 字符串反转(比如@”123”调用方法后返回@”321”)
//2> 计算英文字母的个数(比如@”5435abc54abc3AHJ5”调用方法后返回的是9)
//3> 去除字符串两端空格(比如@” 1235 45 ”调用方法后返回@”1235 45”)
#import "NSString+Extension.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
//1,字符串反转
NSString *str=[[NSString alloc]init];
str=[str CharacterInversion:@"12345"];
NSLog(@"%@",str);
//2,计算英文字母的个数
NSString *str2=@"5435abc54abc3AHJ5";
NSInteger i=[str2 EnglishCount:str2];
NSLog(@"%li",i);
//3,去除字符串两端空格
NSString *str3=@" 1235 45 ";
str3=[str3 clearSpace:str3];
NSLog(@"%@",str3);
}
return 0;
}
@interface NSString (Extension)
//声明字符反转方法
-(NSString *)CharacterInversion:(NSString *)str;
//计算英文字母方法
-(NSInteger)EnglishCount:(NSString *)str;
//去除字符串两端空格方法
-(NSString *)clearSpace:(NSString *)str;
@end
#import "NSString+Extension.h"
@implementation NSString (Extension)
//字符反转方法
-(NSString *)CharacterInversion:(NSString *)str{
//创建可变数组存放结果
NSMutableArray *array=[NSMutableArray array];
NSString *strNew;
//注意characterAtIndex:是从0开始计算的因此这里长度要减1
for (NSInteger i=str.length-1; i>=0; i--) {
//将循环到的每个字符转换成oc字符
strNew=[NSString stringWithFormat:@"%c",[str characterAtIndex:i]];
//将字符累加到数组
[array addObject:strNew];
}
//将数组转换成字符串 用空格隔开
return [array componentsJoinedByString:@" "];
}
//计算英文字母方法
-(NSInteger)EnglishCount:(NSString *)str{
char c;
NSInteger count=0;
for (NSInteger i=0;i<str.length;i++) {
//循环取出每个字符
c=[str characterAtIndex:i];
//判断是否是字母 是count累加
if ((c >='a' && c<='z')|| (c >='A' && c<='Z'))
{
count++;
}
}
return count;
}
//去除字符串两端空格方法
-(NSString *)clearSpace:(NSString *)str{
//因为要去除空格因此将字符串装换为可变字符串
NSMutableString *str1 = [[NSMutableString alloc] initWithString:str];
//字符串不能是单个空格
if (![str isEqual:@" "]) {
//循环判断第一个字符是否是空格
while ([str1 characterAtIndex:0] == ' ')
{ //从开始位置删除1个字符
[str1 deleteCharactersInRange:NSMakeRange(0, 1)];
}
while ( [str1 characterAtIndex:([ str1 length]-1) ] == ' ')
{
[str1 deleteCharactersInRange:NSMakeRange(([str1 length]-1), 1)];
}
}
return str1;
}
@end
作者: 任子杰 时间: 2015-11-4 23:59
9,
//9、 现在有一个有序的数组,要求用户输入一个整数放到数组中还保证这个数组是有序的。例如原数组为@[@1,@3,@5,@7,@9]; 插入8之后为@[@1,@3,@5,@7,@8,@9];(Objective-C)
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSMutableArray *array = [NSMutableArray arrayWithArray:@[@1,@3,@5,@7,@9]];
long count= array.count;
NSLog(@"请输入一个整数:");
int i;
scanf("%d",&i);
//将int型数据转换成OC中的NSNumber型
NSNumber *num=[NSNumber numberWithInt:i];
for (int i=0; i<count; i++) {
//判断如果输入的数字与当前数字是升序的关系 即结果小于等于0
//将输入的字符插入到当前循环到的数组下标位置
if ([num compare:array]<=0) {
[array insertObject:num atIndex:i];
break;
}
//经过上面循环如果字符串长度无变化 说明输入的数字大于数组的数字追加到数组末尾
if (array.count==count) {
[array addObject:num];
}
}
NSLog(@"%@",array);
}
return 0;
}
作者: 任子杰 时间: 2015-11-5 00:00
10,
#import <Foundation/Foundation.h>
//10、 定义一个学生类,需要有姓名,年龄,考试成绩三个成员属性,创建5个对象,属性可以任意值。(Objective-C)
//
//1) 不使用@property,手动编写他们的访问器方法(getter和setter),注意内存管理(手动管理内存)
//2) 增加一个便利构造器(快速构造器)
//3) 使用NSLog输出学生对象时,输出信息格式为:My Name Is XXX Age Is XXX Score Is XXX
//4) 对5个学生对象按照成绩—》年龄—》姓名优先级排序(成绩相同按照年龄排序,成绩年龄相同按照姓名排序(5个学生的属性值自己随便设定,姓名不考虑中文,按26个大小字母排序))
#import "Student.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
//调用自定义构造方法给属性赋值
Student *s1=[[Student alloc]initWithName:@"小明" andAge:15 andScore:45];
Student *s2=[[Student alloc]initWithName:@"王五" andAge:15 andScore:45];
Student *s3=[[Student alloc]initWithName:@"赵四" andAge:18 andScore:90];
Student *s4=[[Student alloc]initWithName:@"李明" andAge:16 andScore:80.9];
Student *s5=[[Student alloc]initWithName:@"张三" andAge:18 andScore:90];
//将对象放入数组
NSArray *array=[NSArray arrayWithObjects:s1,s2,s3,s4,s5, nil];
//调用方法 执行排序
NSArray *arrayNew=[array sortedArrayUsingSelector:@selector(compareStu:)];
//采用快速枚举遍历数组
for (Student *stu in arrayNew) {
//由于在Student类中已经重写desciption方法,直接输出即可
NSLog(@"%@",stu);
}
//用完销毁对象
[s1 release];
[s2 release];
[s3 release];
[s4 release];
[s5 release];
}
return 0;
}
#import <Foundation/Foundation.h>
@interface Student : NSObject{
NSString *_name;
int _age;
int _score;
}
//手动创建get、set方法
-(void)setName:(NSString *)name;
-(NSString *)name;
-(void)setAge:(int)age;
-(int)age;
-(void)setScore:(int)score;
-(int)score;
//自定义构造方法 初始化成员变量
-(id)initWithName:(NSString *)name andAge:(int)age andScore:(int)score;
//用当前对象与传入对象比较
-(NSComparisonResult)compareStu:(Student *)student;
@end
#import "Student.h"
@implementation Student
-(void)dealloc{
//因为name在set方法引用计数加了1,这里要release一次才能释放对象
[_name release];
[super dealloc];
NSLog(@"Student delloc");
}
-(void)setName:(NSString *)name{
//如果传进来的nam不等于当前对象name,让当前对象release一次,
//传入对象引用计数加1 赋值给当前对象
if (_name!=name) {
[_name release];
_name=[name retain];
}
_name=name;
}
-(NSString *)name{
return _name;
}
-(void)setAge:(int)age{
_age=age;
}
-(int)age{
return _age;
}
-(void)setScore:(int)score{
_score=score;
}
-(int)score{
return _score;
}
-(id)initWithName:(NSString *)name andAge:(int)age andScore:(int)score{
//判断父类初始化成功
if (self=[super init]) {
_name=name;
_age=age;
_score=score;
}
return self;
}
//重写desciption方法,按格式输入内容
-(NSString *)description{
return [NSString stringWithFormat:@"My Name Is %@ Age Is %d Score Is %d",_name,_age,_score];
}
-(NSComparisonResult)compareStu:(Student *)student{
//比较成绩
NSComparisonResult result=[[NSNumber numberWithInt:student.score] compare:[NSNumber numberWithInt:self.score]];
//成绩相等,比较年龄
if (result==NSOrderedSame) {
result=[[NSNumber numberWithInt:student.age]compare:
[NSNumber numberWithInt:self.age]];
//年龄相等 比较姓名
if (result==NSOrderedSame) {
result=[self.name compare:student.name];
}
}
//返回结果
return result;
}
@end
看完的好心人评论下,谢谢,目前正在赚技术分。
作者: yanggangcl 时间: 2015-11-5 10:20
楼主真心好人!!!
作者: D_Time 时间: 2015-11-5 11:08
感觉好难啊,优点害怕过不去,现在基础视频看到14天了
作者: Morning_jcg 时间: 2015-11-5 12:56
刚开始学OC,过来学习,,楼主幸苦了,,
作者: toveyloves 时间: 2015-11-5 12:58
这是考基础?
作者: 飞奔的小鱼 时间: 2015-11-5 12:59
楼主,一共就10道题么?我也准备1205期加个好友吧
作者: vyqrvwgf 时间: 2015-11-5 13:02
赶快面试吧,11号之前就招满了
作者: 王泽 时间: 2015-11-5 13:07
楼主学了多少天了~ 是基础班学的 还是就业班学的啊
作者: 韦德460 时间: 2015-11-5 13:26
IOS12月5日的是长沙的吗?
作者: 勇猛的小黑 时间: 2015-11-5 21:30
厉害厉害
作者: 拐杖猫猫 时间: 2015-11-5 21:35
感觉好难好难的样子
作者: arhui 时间: 2015-11-5 22:17
谢谢分享 努力学习中。。。。。。
作者: daitoudainaoali 时间: 2015-11-6 00:55
加油!赞!
作者: fanyafangxf 时间: 2015-11-6 13:50
好难呀,正在学OC内存管理
作者: 江流石不动 时间: 2015-11-6 15:12
可以的,祝你通过技术分早日达到
作者: 王鹏飞1 时间: 2015-11-6 15:29
我也是12月5日ios14期。。。。
作者: 王鹏飞1 时间: 2015-11-6 15:35
第七题:http://bbs.itheima.com/thread-254755-1-1.html
有不同意见
作者: liminghui 时间: 2015-11-6 16:39
加油!!!
作者: hailiqh 时间: 2015-11-6 18:09
谢谢努力拷贝到这里分享给大家!
作者: 眼瞳╄渲染繁华 时间: 2015-11-6 21:09
很棒呀,赞一个
作者: 谁在放荡 时间: 2015-11-6 21:13
都是考oc的啊
作者: qiluzhixing 时间: 2015-11-6 22:17
准备申请这期,希望做同学
作者: hulk374 时间: 2015-11-6 22:21
太难了吧{:2_40:}
作者: 于鸿鹏 时间: 2015-11-15 19:34
我正在走到这个环节了
作者: Marlong 时间: 2015-11-15 20:29
入学题都是OC的吗
作者: 海风眷恋的沙 时间: 2015-11-15 20:45
感觉好难啊,.就看懂了3 4 道把,.
作者: 大雕会飞 时间: 2015-11-15 21:25
辛苦了,楼主,我还没学到呢
作者: zhecipinle 时间: 2015-11-15 21:47
学到了,羡慕
作者: 453702877 时间: 2015-11-15 22:28
这个确实可以借鉴一下,大家都会走这一步的,要多学习学习
作者: Meracle 时间: 2015-11-15 22:40
我也准备第十四期,可是不知道能不能过
作者: 蜗牛飞翔 时间: 2015-11-15 22:58
楼主在家肯定好好学的,给你赞一个,同时也看到了就业班的面试题,哈哈
作者: 364827317 时间: 2015-11-15 23:29
我也进行到第三步了,不过心里还是没有底啊
作者: 韩三少 时间: 2015-11-16 00:20
楼主进就业班了吗?
作者: 叶凤鸣 时间: 2015-11-16 10:28
都是OC,加油!
作者: 勇猛的小黑 时间: 2015-11-16 11:43
厉害 厉害
作者: imppppp 时间: 2015-11-16 19:48
厉害厉害
作者: 453702877 时间: 2015-11-16 20:52
这个需要借鉴借鉴啊。
作者: 王永贺 时间: 2015-11-16 21:36
这个有已知bug, 当你输入10的时候不能添加到里面
作者: tsc0000 时间: 2015-11-17 07:17
好好好好
作者: 姚春林 时间: 2015-11-17 09:16
可以的,可以的。
作者: 陌忆 时间: 2015-11-17 22:46
加油加油
作者: 能不能行 时间: 2015-11-17 23:00
这基础有点牛逼
作者: 超人不会飞啊 时间: 2015-11-17 23:25
哪里的就业班哦
作者: 约吗^_^ 时间: 2015-11-18 00:03
顶上去,希望能给你加精华
作者: 1170191405 时间: 2015-11-18 00:59
默默路过
作者: mr.late 时间: 2015-11-18 07:57
这是就业班的考试啊?感觉有点难。
作者: 唐阿丽 时间: 2015-11-18 12:21
加油!赞!
作者: 于鸿鹏 时间: 2015-11-20 08:28
楼主 ,你是12月5 号的么?
作者: 于鸿鹏 时间: 2015-11-20 08:30
你好 ,你已经面试通过了
作者: IT-capfer 时间: 2015-11-20 22:35
都是高手啊,我正在学习,希望给能和你们成为同学
作者: 这个冬天有点冷 时间: 2015-11-20 23:40
入学班的表示就一道题有点思路,看样子考试题都是OC的
作者: suihaixia54 时间: 2016-1-30 19:57
看完后,感觉思路很清晰,fighting!
作者: 水丹青 时间: 2016-1-30 21:31
不忘初心 方得始终.
作者: guyuexing 时间: 2016-1-30 23:44
谢谢楼主分享
作者: 学以致用表初衷 时间: 2016-1-31 06:35
mark下。希望能用的上,
作者: Chris_Wu 时间: 2016-1-31 12:40
考的很全面!
作者: 杨冬武 时间: 2016-1-31 23:43
感觉有点难,看来得加油有了
作者: 明哥哥 时间: 2016-4-19 17:32
楼主是好人,好人一生平安
作者: qqikufei 时间: 2016-7-14 15:01
加油!赞!
作者: huan42025 时间: 2016-7-15 15:50
支持楼主,说的很详细
作者: hjy0260 时间: 2016-10-3 19:11
支持下,有道题的思路还是不错的
作者: will123 时间: 2016-10-3 23:55
必须的。。。
作者: Stone_熊小叔 时间: 2016-10-4 00:52
++++++++++++++++++++++++++
作者: 邱中林 时间: 2016-10-4 03:49
很实用,收下拉~~
作者: chenhao597 时间: 2016-10-4 20:33
楼主看上去很牛逼的样子 完全是复制代码吧
作者: 冬季幻影 时间: 2017-3-14 14:24
分享的很好,赞一个
作者: 935539 时间: 2017-3-18 08:28
谢谢分享
| 欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |