黑马程序员技术交流社区
标题:
士兵射击那个题
[打印本页]
作者:
克莱斯勒
时间:
2015-9-11 21:24
标题:
士兵射击那个题
士兵射击那个题能不能打印出来"谁在用什么枪射击,剩余子弹是多少"?
能不能把NSLog放在最下边?
作者:
kylmetz
时间:
2015-9-11 21:26
应该可以吧
作者:
a124113798
时间:
2015-9-11 21:28
可能可以。。。
作者:
克莱斯勒
时间:
2015-9-11 21:30
a124113798 发表于 2015-9-11 21:28
可能可以。。。
怎么搞?
作者:
克莱斯勒
时间:
2015-9-11 21:31
kylmetz 发表于 2015-9-11 21:26
应该可以吧
怎么搞?
作者:
a631082744
时间:
2015-9-11 22:00
#include<Foundation/Foundation.h>
@interface Bullet: NSObject
{
@public
int _bulletcount;
NSString *_model;
}
@end
@interface Gun: NSObject
{
@public
NSString *_size;
}
-(void)shoot:(Bullet *)bullet;
@end
@interface Person: NSObject
{
@public
NSString *name;
int life;
int level;
}
-(void)fire:(Gun *)Gun andBullet:(Bullet *) bullet;
@end
@implementation Bullet
@end
@implementation Gun
-(void)shoot:(Bullet *)bullet{
if( bullet ->_bulletcount>0){
bullet->_bulletcount--;
NSLog(@"\n%@正在猛烈射击,子弹还剩%d发",_size,bullet->_bulletcount);
}else{
NSLog(@"\n子弹不够,请换子弹");
}
}
@end
@implementation Person
-(void)fire:(Gun *)Gun andBullet:(Bullet *)bullet{
[Gun shoot:bullet];
};
@end
int main(){
Person *p1=[Person new];
Gun *g1=[Gun new];
g1->_size=@"小米加步枪";
Bullet *b1=[Bullet new];
b1->_bulletcount=3;
[p1 fire:g1 andBullet:b1];
[p1 fire:g1 andBullet:b1];
[p1 fire:g1 andBullet:b1];
[p1 fire:g1 andBullet:b1];
[p1 fire:g1 andBullet:b1];
return 0;
}
作者:
pyy061
时间:
2015-9-11 22:32
作者:
李天昊
时间:
2015-9-11 23:46
学到了 ~~~~~~~~~~~~~
作者:
bowenfei
时间:
2015-9-12 00:16
这是oc后面的联系题吗?
作者:
fangshiqi
时间:
2015-9-12 00:19
学习了。
作者:
fangshiqi
时间:
2015-9-12 00:23
涨姿势。
作者:
zhangsimin
时间:
2015-9-12 00:30
#import <Foundation/Foundation.h>
#pragma mark 子弹类的声明
@interface Bullet:NSObject
{@public
NSString * _size; //子弹型号
int _bulletCount; //子弹数目
}
@end
#pragma mark 子弹类的实现
@implementation Bullet
@end
#pragma mark 枪类的声明
@interface Gun : NSObject
{//枪的属性
@public
NSString * _size;
}
//枪的行为
-(void)fire:(Bullet *)bullet andName:(NSString *)_name;
@end
//枪类的实现 方法
#pragma mark 枪类的实现
@implementation Gun
//射击
-(void)fire:(Bullet *)bullet andName:(NSString *)_name{
if(bullet->_bulletCount>0){
bullet-> _bulletCount--;
NSLog(@"%@用%@正在 突突的射击....,子弹剩余数:%d",_name,_size, bullet->_bulletCount);
}else
NSLog(@"子弹没有了,请放入子弹!!!");
}
@end
#pragma mark -
#pragma mark 人类的声明
@interface Soldier : NSObject
{//属性
@public
NSString *_name; //姓名
int life; //生命值
int level; //水平
}
//人的行为 开枪
-(void)kill:(Gun *)gun andBullet:(Bullet *) bullet andName:(NSString *)_name;
@end
#pragma mark 人类的实现
@implementation Soldier
//人的行为 让枪射击
-(void)kill:(Gun *)gun andBullet:(Bullet *) bullet andName:(NSString *)_name{
[gun fire:bullet andName:@"许三多"];
}
@end
#pragma mark -
int main(int argc, const char * argv[]) {
@autoreleasepool {
//创建人的对象
Soldier *per=[Soldier new];
per->_name=@"许三多";
per->life=99;
per->level=3;
//创建枪的对象
Gun *gun=[Gun new];
gun->_size=@"步枪";
//创建子弹的对象
Bullet *bullet=[Bullet new];
bullet->_size=@"2mm的口径";
bullet->_bulletCount=4;
//战士开枪
[per kill:gun andBullet:bullet andName:@"许三多"];
}
return 0;
}
运行结果如下:
2015-09-12 00:29:24.619 OC第2天[771:44307] 许三多用步枪正在 突突的射击....,子弹剩余数:3
作者:
lumangmang
时间:
2015-9-13 16:05
或许是可以的。。。
作者:
tr2e
时间:
2015-9-13 20:50
求教 你是自学还是上的辅导?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2