0

大家好,我创建了 main.m 文件、calculator.h 和calculator.m 文件

在写下我的代码之前,我的问题是程序不要求操作员它只要求第一个和第二个数字。

这是我的 main.m 代码

int num1,num2;
    char op;

    Calculator *myCalculator=[[Calculator alloc]init];

    NSLog(@"Please Enter The First Number");
    scanf("%i",&num1);

    NSLog(@"Please Choose a mathematical operation '+', '-', '*', '/' :");
    scanf("%c",&op);

    NSLog(@"Please Enter The Second Number");
    scanf("%i",&num2);



    switch (op) {
        case '+':

            NSLog(@"The Result is : %i",[myCalculator Add:num1 :num2]);
            break;

        case '-':

            NSLog(@"The Result is : %i",[myCalculator Sub:num1 :num2]);
            break;


        case '*':
            NSLog(@"The Result is : %i",[myCalculator Mul:num1 :num2]);
            break;

        case '/':
            NSLog(@"The Result is : %i",[myCalculator Div:num1 :num2]);
            break;

        default:
            NSLog(@"Unknown Operator");
            break;
    }

我的实现代码如下:

-(int) Add:(int)num1 :(int)num2
{
    return num1+num2;
}

-(int) Sub:(int)num1 :(int)num2
{
    return num1-num2;
}

-(int) Mul:(int)num1 :(int)num2
{
    return num1*num2;
}

-(int) Div:(int)num1 :(int)num2
{
    return num1/num2;
}

任何帮助将不胜感激提前感谢!

4

1 回答 1

1

有一段时间没有做过这样的事情了,但是当我制作一个基于文本的小型 RPG 战斗系统时,我遇到了类似的问题。用户输入数字后按回车,对吗?该数字将被扫描到num1,换行符将被扫描到op. 记录op切换前的值。

于 2013-01-18T23:56:21.890 回答