Objective c 从输入到英语的整数
我要做的是让用户输入一个数字,然后程序以word的形式读取每个数字。例如:Objective c 从输入到英语的整数,objective-c,xcode,command-line,Objective C,Xcode,Command Line,我要做的是让用户输入一个数字,然后程序以word的形式读取每个数字。例如: Input: 517 Output: Five One Seven 这是一个简单的命令行工具,使用nslog和scanf获取输入并提供输出,没有什么太高级的东西。我有它的jist,但它只适用于一位数: #import <Foundation/Foundation.h> int main (int argc, const char * argv[]) { @autoreleasepool
Input: 517
Output: Five One Seven
这是一个简单的命令行工具,使用nslog和scanf获取输入并提供输出,没有什么太高级的东西。我有它的jist,但它只适用于一位数:
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[]) {
@autoreleasepool {
int number;
NSLog(@"Type your number.");
scanf("%i", &number);
if (number == 0) {
NSLog(@"Zero");
} else if (number == 1){
NSLog(@"One");
} else if (number == 2) {
NSLog(@"Two");
} else if (number == 3) {
NSLog(@"Three");
} else if (number == 4) {
NSLog(@"Four");
} else if (number == 5) {
NSLog(@"Five");
} else if (number == 6) {
NSLog(@"Six");
} else if (number == 7) {
NSLog(@"Seven");
} else if (number == 8) {
NSLog(@"Eight");
} else if (number == 9) {
NSLog(@"Nine");
}
}
return 0;
}
但这将导致产出倒退
有什么建议吗
谢谢,所以你可以向后创建一个列表,然后将其反转,并向用户读取数字 用户不会看到性能方面的任何差异 要使用数组执行此操作,您可以查看以下问题: 使用递归
void printNumber(int a){
if(a/10 > 0){
printNumber(a/10);
}
int digit = a%10;
switch(digit){
{
case 0:
NSLog(@"Zero ");
break;
case 1:
NSLog(@"One ");
break;
case 2:
NSLog("Two ");
break;
....
}
}
NSNumberFormatter
有一个样式器可以帮助您处理它
NSNumberFormatter *numberFormatter = [[NumberFormatter alloc] init];
numberFormatter.numberStyle = NSNumberFormatterSpellOutStyle;
不,我正在自己翻阅一本教科书,试图学习Objective-C语言,而不是iOS appAn中的应用程序。这是一个有趣的工具,它的作用不仅仅是:我能够让它打印数字。。但是向后。反转数组,然后读取从索引0到结尾的数字。
NSNumberFormatter *numberFormatter = [[NumberFormatter alloc] init];
numberFormatter.numberStyle = NSNumberFormatterSpellOutStyle;