本帖最后由 陆露 于 2015-10-27 13:34 编辑
输出one two three 小练习
int main(int argc, const char * argv[]) { @autoreleasepool {
//接收输入的字符 NSLog(@"请输入组数字"); char c[100]; gets(c);
//将字符串数组转换成string NSString *str = [NSString stringWithUTF8String:c];
//创建一个不可变数组 NSArray *array = [NSArray arrayWithObjects:@"zero",@"one",@"two",@"three",@"four",@"five",@"six",@"seven",@"eight",@"nine", nil];
//遍历循环获取字符串转换成int类型导入array[int]获取数组元素 转换成char用printf输出 for(int i = 0; i < str.length ; i++) { printf(" %s",[ array[[[str substringWithRange:NSMakeRange(i, 1)] intValue] ] UTF8String] ); }
printf("\n");
//思路:用字符数组接收 转换成string类型 遍历string的到每一个字符类型 转换成int类型 // 将得到的数字,方倒array[int]中获取数组中每一个元素 得到的string类型转换成字符行输出 // 或者增加到一个可变字符串中输出
//1.遍历string中的每一个字符串 //[s substringWithRange:NSMakeRange(i, 1)]
//2.表示将遍历出来的字符 转换成int类型 例如遍历后得到字符串@"1" 就变成 整型 1了 //[[s substringWithRange:NSMakeRange(i, 1)] intValue];
//3.将得到的整型 1 交给array[1]获取 array数组中的第1个元素 @“one” //array[[[s substringWithRange:NSMakeRange(i, 1)] intValue]] 等同于 array[1];
//4.将获取的@“one”string类型的元素 转换成char类型 //array[1]数组中的@"one" 他是一个string类型 将string 类型转换成char类型如下 //[ array[[[s substringWithRange:NSMakeRange(i, 1)] intValue] ] UTF8String] 等同于 //[@"1" UTF8String]; //将字符串类型转换成 字符类型
//5用printf打印遍历得到的每一个char字符串 //printf();只能打印字符类型 不能打印string对象 所以才转换成string类型的
} return 0;
}
大家一定要多做练习 吸取我的教训 总以为听懂了就会了 可是第一次面试 第一题都没完成 直接被老师KO!
虽然总以为自己很聪明,其实然并卵! 当你拿到一个题目时,脑子里却在想,下午该吃什么的时候,你就像我一样成功了!
|