Object C 选择结构继承C语言的特性:
基本的if (expression); if ...else; if....else if ...else; switch...case ; do... while; 等都是基础中的基础,也没有什么特别可说的,C语言怎么用,你就怎么用就可以了。
下面介绍下Object C 相对特殊的一些选择结构。
1. Boolean 变量
首先BOOL 类型的本质->通过预处理程序添加的:
typedef signed char BOOL;
BOOL 类型的变量有2种取值: YES, NO
#define YES (BOOL) 1
#define NO (BOOL) 0
下面以生成素数表作为BOOL 变量使用的示例:
// // Primer.m // Primer // Created by Mr.Sunday on 15/1/7. // Copyright (c) 2015年 Novogene. All rights reserved. // #import <Foundation/Foundation.h> int main (int argc, char const *argv[]) { @autoreleasepool{ int m, n, p; BOOL isPrime; NSLog(@"please input the Largest number:"); scanf("%d", &p); for (m=2; m<=p;m++) { isPrime = YES; for (n=2; n<m;n++) { if(m%n == 0) { isPrime = NO; } } if (isPrime == YES) { NSLog(@"%i", m); } } } return 0; }<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </span>
2.条件运算符
首先它很特别,是个三元运算符:
condition ? expression1 : expression2 ;
如果condition 结果为true , 执行expression1, 否则执行 expression2;
max_value = (a>b)?a:b;
编写预处理程序的宏指令时,条件运算符非常便利;
参考书:
Object C 程序设计 (第四版)