- //
- // main.m
- // 第二题
- //2.设计一个”狗“类
- //1> 属性
- //* 颜色
- //* 速度(单位是m/s)
- //* 性别
- //* 体重(单位是kg)
- //2>行为
- //* 吃:每吃一次,体重增加0.5kg,输出吃完后的体重
- //* 吠(叫):输出所有的属性
- //* 跑:每吃一次,体重减少0.5kg,输出速度和跑完后的体重
- //* 比较颜色:跟别的狗比较颜色,如果一样,两个值做减法得零,返回NO(零值),不一样,
- //做减法得到非零值,返回YES(1)
- //* 比较速度:跟别的狗比较速度,返回速度差(自己的速度 - 其他狗的速度)
- // Created by mac on 15/9/10.
- // Copyright (c) 2015年 zhy. All rights reserved.
- //
- #import <Foundation/Foundation.h>
- #pragma mark 枚举狗的颜色
- typedef enum Color {kWhite,kBlack,kYellow}dogColor;
- #pragma mark "狗"类的声明
- //1> 属性
- @interface Dog : NSObject
- {
- @public
- dogColor _color;
- float _speed;
- NSString * _sex;
- float _weight;
- }
- //2> 行为
- -(void)eat:(int)_time;
- -(void)bark;
- -(void)run:(int)_time2;
- -(int)compare:(dogColor)_color2;
- -(int)compare2:(float)_speed2;
- @end
- #pragma mark "狗"类的实现
- @implementation Dog
- //3> 实现
- -(void)eat:(int)_time
- {
- _weight += (0.5)*_time;
- NSLog(@"吃完后的体重:%.2f",_weight);
-
- }
- -(void)bark
- {
- NSLog(@"颜色:%d,速度:%.2fm/s,性别:%@,体重:%.2fkg",_color,_speed,_sex,_weight);
- }
- -(void)run:(int)_time2
- {
- _weight -= (0.5)*_time2;
-
- NSLog(@"跑完后的体重:%.2fkg",_weight);
- }
- -(int)compare:(dogColor)_color2
- {
- if (0 == (_color) - (_color2)) {
- BOOL flag = NO;
- NSLog(@"结果为%d,则跟别的狗颜色一样",flag);
- }else{
- BOOL flag = YES;
- NSLog(@"结果为%d,则跟别的狗颜色不一样",flag);
- }
- return 0;
- }
- -(int)compare2:(float)_speed2
- {
- float chaZhi = _speed - _speed2;
-
- NSLog(@"跟别的狗的速度差为:%.2f",chaZhi);
-
- return 0;
- }
- @end
- #pragma mark _
- int main(int argc, const char * argv[]){
- @autoreleasepool {
- Dog *dog =[Dog new];
-
- dog ->_color = kBlack;
-
- dog ->_sex = @"公的";
-
- dog ->_speed = 6.02;
-
- dog ->_weight= 40;
-
- [dog eat:2];
-
- [dog bark];
-
- [dog run:2];
-
- [dog compare:kWhite];
-
- [dog compare2:5.01];
- }
-
- return 0;
- }
复制代码 这是我的代码额,不知道有没有对题目的意思理解错误,但是第三题那个我不知道是什么意思,是直接打印出那个行为,还是和学c的时候那样用多文件开发之类的,还是调用那个"狗"类,反正就是卡在声明那块...就差这一题了.
|