`
R任轩
  • 浏览: 14870 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

OC语言基础(数据类型和表达式、循环结构和选择结构)

 
阅读更多

        


int a = 100;
        int b = 2;
        int c = 25;
        int d = 4;
        float e = 25.0;
        float f = 2.0;
        int result;
        //优先级较高的运算符首先求值
        result = a - b;//减法
        NSLog(@"a - b = %i",result);
        result = b + c;//加法
        NSLog(@"b + c = %i",result);
        result = c / d;//除法
        NSLog(@"b / d = %i",result);
        result = a - d/b*c;//优先级
        NSLog(@"a - d / b*c= %i",result);
        
        //整数运算和一元负号运算符
        NSLog(@"6+a/5*b=%i",6+a/5*b);//除法的优先级高于加法,乘法的优先级高于加法
        NSLog(@"a/b*b=%i",a/b*b);//从左往右计算,整形中“/”取整所以是12*2
        NSLog(@"c/d*d=%f",e/f*f);//从左往右计算,浮点型中保留小数点所以是12.5*2
        NSLog(@"-a=%i",-a);//一元运算符有更高的优先级
        NSLog(@"-c=%f",-e);//一元运算符有更高的优先级
        
        //模运算符,值取余
        NSLog(@"a %% b =%i",a % b);
        NSLog(@"a %% c =%i",a % c);
        NSLog(@"a %% d =%i",a % d);
        NSLog(@"a / d * d + a %% d = %i",a / d * d + a % d);
        
        整型值与浮点值得相互转换
        float f1 = 123.125, f2;
        int i1,i2 = -150;
        i1 = f1;//浮点数到整数的转换
        NSLog(@"%f~%i",f1,i1);
        f1 = i2;//整数到浮点数得转换
        NSLog(@"%i~%f",i2,f1);
        f1 = i2 / 100;//整数除以整数
        NSLog(@"%i~%f",i2,f1);
        f2 = i2 / 100.0;//整数除以浮点数
        NSLog(@"%i~%f",i2,f2);
        f2 =(float)i2 / 100;//类型强制转换运算符
        NSLog(@"(float)%i~%f",i2,f2);
        
        int triangualrNumber;
        triangualrNumber = 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8;
        NSLog(@"The eighth triangular number is %i",triangualrNumber);
        int n,triangularNumber;//计算第二百个三角数的程序
        triangularNumber = 0;
        
        for(n = 1;n <= 200;n ++){
            triangularNumber +=n;
        }
        NSLog(@"The 200th triangular number is %i",triangularNumber);
        生成三角数表的程序
        int n,triangularNumber;
        NSLog(@"TABLE OF TRAIGULAR NUMBERS");
        NSLog(@"n Sum from 1 to n");
        NSLog(@"------------------");
        
        triangularNumber = 0;
        for (n = 1;n <= 10; n ++) {
            triangularNumber += n;
            NSLog(@"%i   %i",n,triangularNumber);
        }

        //键盘输入
        int n,number,triangularNumber;
        NSLog(@"what triangular number do you want ?");
        scanf("%i",&number);
        for (n = 1; n <= number; ++ n) {
            triangularNumber += n;
             NSLog(@"Triangular number %i is %i\n",number,triangularNumber);
        }
        嵌套的for循环
        int n,number,triangularNUmber;
        for (int counter = 1; counter <= 3; ++ counter) {
            NSLog(@"what number do you want ?");
            scanf("%i",&number);
            triangularNUmber = 0;
            for (n = 1; n <= number; n ++) {
                triangularNUmber += n;
            }
             NSLog(@"Triangular numner %i is %i",number,triangularNUmber);
        }
        while 语句
        int count = 1;
        
        while (count <= 5) {
            NSLog(@"%i",count);
            ++ count;
        }
        找到两个非负数的最大公约数
        unsigned int u,v,temp;
        
        NSLog(@"Please type in two nonnegative integers");
        scanf("%u%u",&u,&v);
        
        while (v != 0) {
            temp = u % v;//temp = 50%20=10 u=20 v=10 /temp =0 u=10 v = 0
            u = v;
            v = temp;
        }
         NSLog(@"Their greatest common divisor is %u",u);
        颠倒显示数字的位数(while)
        int number,right_dight;
        NSLog(@"Enter your number.");
        scanf("%i",&number);
        while (number != 0) {
            right_dight = number % 10;
            NSLog(@"%i",right_dight);
            number /= 10;
        }
        颠倒显示数字的位数(do)
        int number,right_dight;
         NSLog(@"Enter your number.");
        scanf("%i",&number);
        do{
            right_dight = number % 10;
            NSLog(@"%i",right_dight);
            number /= 10;
        }
        while (number != 0);
        计算一个整数的绝对值(if 语句)
        int number;
        NSLog(@"Type in your number:");
        scanf("%i",&number);
        if(number < 0){
            number = - number;
        }
            NSLog(@"The absolute value is %i",number);
        
        确定数字是偶数还是奇数的程序
        
        int number_to_test,remainder;
        
        NSLog(@"Enter your number to be tested: ");
        scanf("%i",&number_to_test);
        
        remainder = number_to_test % 2;
        
        if (remainder == 0)
            NSLog(@"The number is even.");
        else
            NSLog(@"The number is odd.");

        //确定一年是否为闰年的程序
        int year,rem_4,rem_100,rem_400;
        
        NSLog(@"Enter the year to be tested: ");
        scanf("%i",&year);
        
        rem_4 = year % 4;
        rem_100 = year % 100;
        rem_400 = year % 400;
        
        if ((rem_4 == 0 && rem_100 != 0) || rem_400 == 0)
            NSLog(@"Tt's a leap year.");
        else
            NSLog(@"Nope,it's not a leap year.");
        //对单个字符进行分类,从键盘输入
        char c;
        NSLog(@"Enter the character do you want!");
        scanf("%c",&c);
        
        if ((c >='a' && c <= 'z') || (c >= 'A' && c <= 'Z'))
            NSLog(@"It's an alphabetic character.");
        else if(c >= '0' && c <= '9')
            NSLog(@"It's a digit.");
        else
             NSLog(@"It's a special character.");
        评估简单表达式的值(if,else语句)
        double value1, value2;
        char operator;
        Calculator *deskCalc = [[Calculator alloc] init];
        
        NSLog(@"Enter your expression.");
        scanf("%lf %c %lf", &value1, &operator, &value2);
        
        [deskCalc setAccumulator:value1];
        if (operator == '+')
            [deskCalc add:value2];
        else if(operator =='-')
            [deskCalc subtract:value2];
        else if(operator == '*')
            [deskCalc multiply:value2];
        else if(operator == '/')
             if(value2 == 0)
                 NSLog(@"Division by Zero");
             else
                 [deskCalc divide:value2];
        else
            NSLog(@"Unkown operator.");
        NSLog(@"%.2f",[deskCalc accumulator]);
         //评估简单表达式的值(switch语句)
        double value1,value2;
        char operator;
        NSLog(@"Enter your expression.");
        scanf("%lf %c %lf",&value1,&operator,&value2);
        
        Calculator *deskCalc = [[Calculator alloc] init];
        [deskCalc setAccumulator:value1];
        switch (operator) {
            case '+':
                [deskCalc add:value2];
                break;
            case '-':
                [deskCalc subtract:value2];
                break;
            case '*':
                [deskCalc multiply:value2];
                break;
            case '/':
                [deskCalc divide:value2];
                break;
            default:
                NSLog(@"Unknown operator.");
                break;
        }
        NSLog(@"%.2f",[deskCalc accumulator]);
        //生成素数表的程序
        int p, d, isPrime;
        
        for (p = 2; p <=50; ++p) {
            isPrime = 1;
            for (d = 2 ; d < p; ++d) {
                if (p % d == 0)
                {
                    isPrime = 0;
                    break;
                }
            }
            if(isPrime != 0)
                NSLog(@"%i ", p);
        }
        //生成素数表的程序(使用BOOL类型和预定义的值)
        int p, d;
        BOOL isPrime;
        for (p = 2; p <= 50; ++p) {
            isPrime = YES;
            for (d =2; d < p; ++d) {
                if (p % d == 0) {
                    isPrime = NO;
                    break;
                }
            }
            if (isPrime == YES)
                NSLog(@"%i",p);
            }
    }
 
  

  //优先级较高的运算符首先求值

 //整数运算和一元负号运算符

 //模运算符,值取余

//整型值与浮点值得相互转换

//生成三角数表的程序

//找到两个非负数的最大公约数

//颠倒显示数字的位数(while/do)

//计算一个整数的绝对值(if 语句)

//确定一年是否为闰年的程序

//评估简单表达式的值(if,else,switch语句)

//生成素数表的程序

//生成素数表的程序(使用BOOL类型和预定义的值)

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics