scanf(@“%lf %c %lf”,&value1,&operator,&value2);
其中lf%是double,但是%f是float类型类型不配会会出现错误。如果是double,应该使用%g来表示。
NSLog(@"%.2f",[deskCalc accumulator]);
表示保留两位小数显示。
for(p=2;p<=50;++p)
{
isPrime = 1;
for(d=2;d
{
if(p % d == 0)
isPrime = 0;
}
if(isPrime !=0)
NSLog(@"%i is Prime",p);
}
用比p小的数字d来做模运算,如果模不等于0,那么这个数就是素数。
condition? expression1:expression2
如果condition真,执行expression1,否则执行expression2.
#import
引用本地文件
#import “Fraction.h”
引用自定义类文件
头文件中 @property int numerator, denominator; 设置属性
实现文件中 @synthesize numerator, denominator; 自动生成设置的属性方法
编译器自动实现一个取值方法getter和一个设值方法setter;
getNumerator, getDenominator;
setNumerator, setDenominator;
如果不使用@synthesize, 那么编译器生成的实例变量会以下划线(_)字符作为其名称的第一个字符,_numderator和_denominator。
可以直接通过点运算来读写属性值,比如:
[Fraction *fraction] = [[Fraction alloc] init];
fraction.numderator = 1;
fraction.denominator = 3;
注意:
1,这里不能和c++混淆,c++指针访问是fraction->numderator = 1;fraction->denominator = 3;
2,一般针对属性才会适用点运算,如果是方法的访问,还是使用传统的方括号形式进行访问。
另外还可以用第三种方法,-(void) setTo:(int) n over:(int) d;同时设置numderator和denominator的值。
这些方法实现的属性值,效果都可以达到。