您的位置:首页 > 其它

OC学习 习题

2015-12-17 11:12 162 查看
/*1. 输入一段字符串,统计其中的单词个数 (10分)

比如:传入 @"welcome to qianfeng" 返回:3

*/

- (NSUInteger)countOfWordInString:(NSString *)str ;

/*

2.将指定字符串逆序(10分)

比如:传入字符串@"iphone" 返回:@"enohpi"

传入字符串@"beautiful" 返回:@"lufituaeb"

*/

- (NSString *)reverseString:(NSString *)str;

/*

3. 把字符串中的字母大小写反转(10分)



//将s中每个字母大写变成小写,小写变成大写,其他字符不动。返回值是修改后的字符串



*/

- (NSString *)reversalUpperAndLowerForString:(NSString *)s;

/*

4. 替换字符串s中从startKey到endKey之间的字符串(10分)

//将s替换成newString

*/

- (NSString *) replaceString:(NSString *)s betweenStartKey:(NSString* )startKey andEndKey:(NSString*)endKey toString:(NSString *)newString;

/*

5. 查找子串出现次数(20分)



// 返回字符串s中出现子串substring的次数

*/

- (NSInteger)countOfSubstring:(NSString *)substring inString:(NSString *)s;

/*

6.将字符串按照单词进行逆序(20分)



将字符串按照单词进行逆序,空格作为划分单词的唯一条件



如@"Welcome to Beijing" 改为 @"Beijing to Welcome"

*/

- (NSString *) reveseWordsOfString:(NSString *)string;

/*

7.计算两个字符串所表示数字的乘积(20分)

传入:@"15" @"15"

返回:@"225"



*/

-(NSString *)mulOfNumber:(NSString *)string1 andNumber:(NSString *)string2;

/*

8.用NSLog打印九九乘法表(10分)

1*1 = 1

2*1 = 2 2*2 = 4

3*1 = 3 3*2 = 6 3*3 = 9



*/

- (void)print99Table;

/*

9. 求一个字符串s的最大连续递减数字子串。(20)



比如:

输入 12345986fffwf3210abcd 输出为 3210

输入 abcd765bbw135797531f12345 输出为 765



//如果有多个相同的最大数字串那么返回最后一个

*/

- (NSString *)subNumberString:(NSString *)string ;

/*

10.打印杨辉三角(10分)

输入 7

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1

1 6 15 20 15 6 1

NSLog打印



*/

- (void)printYangHuiTriangle:(int) n

/*

11 传入一段字符串,把相同的字符按出现顺序,归在一起,并压缩(20分)



比如:



输入 SamSameCome



输出:



S2a2m3e2C1o1



返回值为压缩后的结果,比如S2a2m3e2C1o1

*/

- (NSString *)compressString:(NSString *)s

/*

12 根据输入的内容用NSLog打印出菱形(10分)

*/

//count 表示正方形边长

//flagString 组成菱形的边

//blankString 组成背景正方形

//比如 [class print:5 blankString:@“+”flagString:@“#”];

/*

+ + # + +



+ # + # +



# + + + #



+ # + # +



+ + # + +

*/

-(void)print:(NSInteger)count blankString:(NSString*)blankString flagString:(NSString*)flagString;

/*

13.

编写一个函数,打印下述图形,纪念佐罗先生(20分)

传入:F

打印:

ABCDEF

E

D

C

B

ABCDEF



*/

- (void)printZorroSignForCharacter:(unichar)c;

/*

1.对称的数组(10分)



传入一个数组,其元素类型与个数皆未知,返回新数组,由原数组的元素正序反序拼接而成。



//参数arr 表示原数组地址



//返回值是新数组的地址



传入:@[@"one", @"Two", @"Three"]



返回:@[@"one", @"Two", @"Three", @"Three", @"Two", @"one"]

*/

-(NSArray *)symmetryArray:(NSArray *)arr;

/*

2.找出数组中最长的字符串(10分)



数组中的元素都是字符串,返回其中最长字符串的地址

*/

-(NSString *)longestStringInArray:(NSArray *)arr;

/*

3.将字符串后移(10分)

将字符串向右移动指定位数,首尾循环



如:string传入@"welcometoqianfeng", bits传入4



返回:@"fengwelcometoqian"

*/

-(NSString *)displacemetString:(NSString *)string forBits:(NSUInteger)bits

/*

4.找出出现最多的字母 (10分)

找出字符串中出现次数最多的字母,将该字母和字母出现的次数拼接成一个新字符串

返回新字符串。



传入:@"WelcomeToQianfeng"



返回:@"e3"

*/

- (NSString *)maxTimesCharacterOfString:(NSString *)string

/*

5.将字符中单词用空格隔开(20分)

已知传入的字符串中只有字母,每个单词的首字母大写,请将每个单词用空格隔开

只保留第一个单词的首字母大写



传入:@"HelloMyWorld"



返回:@"Hello my world"

*/

- (NSString *)separateString:(NSString *)string

/*

6.字符串交错穿插(20分)

已知两个字符串只由字母和空格组成,但两个字符串中包含的单词数不一定相等

将两个字符串中的单词交错拼接到一起,当其中一个字符串的单词用尽,另一个

字符串中剩余单词自然拼接在后面



传中:@"Welcome to qianfeng" @"hello my dear world"



返回:@"Welcome hello to my qianfeng dear world"

*/

-(NSString *)staggerString:(NSString *)string1 withString:(NSString *)string2

/*

7 //根据输入的内容打印(20分)



//比如 [class print:5 blankString:@"+" flagString:@"#"];



+ + # + +



+ # + # +



# + + + #



+ # + # +



+ + # + +



*/

+(void)print:(NSInteger)count blankString:(NSString*)blankString flagString:(NSString*)flagString
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: