A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 心程变 中级黑马   /  2015-11-22 08:04  /  990 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

接收从终端输入的整数,提取并用英文显示这个数的每一位数。例如输入123 输出 One Two Three


2 个回复

倒序浏览
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[])
{
    @autoreleasepool
    {
        //定义存放从键盘上输入的整数的变量
        int input;
        
        //从键盘上输入一个整数
        NSLog(@"请输入一个整数(如:112)");
        scanf("%d",&input);
        
        //输出整数,作为比较
        NSLog(@"您输入的整数是%d",input);
        
        //将输入的整数转化为字符串
        NSString *str = [NSString stringWithFormat:@"%d",input];
        
        //定义一个不可变数组,存放0~9的英文
        NSArray *data = @[@"Zero",@"One",@"Two",@"Three",@"Four",@"Five",@"Six",@"Seven",@"Eight",@"Nine"];
        
        //创建一个可变字符串
        NSMutableString *str1 = [NSMutableString string];
        
        //将整数转化为相应的英文
        NSLog(@"转换成英文:");
        
        for (int i = 0; i<str.length; i++)
        {
            //取出每个数字
            int n = [str characterAtIndex:i] - 48;
            
            //将数组元素存放到可变字符串str1中
            [str1 appendString:data[n]];
            
            //在数组元素之间增加空格
            [str1 appendString:@" "];
        }
        //输出转换后的字符串
        NSLog(@"%@",str1);
    }
    return 0;
}
回复 使用道具 举报
动作很迅速啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马