作业传错了,好像传了个空文件上去
只选择上传了.xcodeproj结尾的执行文件,好像点开什么都没有。。在这里重新传一遍请老师批改
#define NSLog(FORMAT, ...) fprintf(stderr,"%s",[[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String])
#import <Foundation/Foundation.h>
#import "Movie.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
//新建并初始化Movie类,并创建对象movie,再用点语法定义并输出电影信息
Movie *movie = [[Movie alloc]init];
movie .movie1=@"编号1 名称《西游记》 导演:郑保瑞 主演:郭富城 时长:120 开播时间:19:30";
movie .movie2=@"编号2 名称《长城》 导演:张艺谋 主演:张涵予 时长:130 开播时间:20:30";
movie .movie3=@"编号3 名称《西游伏妖篇》 导演:徐克 主演:林更新 时长:100 开播时间:20:30";
movie .movie4=@"编号4 名称《盗墓笔记之七星鲁王宫》 导演:李纲人 主演:仅柏然 时长:110 开播时间:21:00";
movie .movie5=@"编号5 名称:《疯狂的外星人》 导演:宁浩 主演:留行 时长:100 开播时间:21:30";
NSLog(@"%@\n%@\n%@\n%@\n%@",movie.movie1,movie.movie2,movie.movie3,movie.movie4,movie.movie5);
//switch语句判断要观看哪部电影
NSLog(@"请输入你要观看的电影的编号:");
int i = 0;
scanf("%d",&i);
switch(i){
case 1:
NSLog(@"你选择《西游记》");
break;
case 2:
NSLog(@"你选择《长城》");
break;
case 3:
NSLog(@"你选择《西游伏妖篇》");
break;
case 4:
NSLog(@"你选择《盗墓笔记之七星鲁王宫》");
break;
case 5:
NSLog(@"你选择了《疯狂的外星人》");
break;
}
//for循环输出座位表,这里应该是我方法没用对,第一行的00输出不了,所以用nslog方法打印了个00
//而且在结束循环后的nslog中即”请输入要坐几排:“前,总有一个8,去不掉。如果去掉,我就会少打印一行座位
NSLog(@"\n请选择座位\n");
int row,seat;
NSLog(@"00");
for(int row=1;row<9;row++){
for(int seat=01;seat<=15;seat++){
NSLog(@" %d ",seat);
if(seat==15){
NSLog(@"\n %d" ,row);
}
}
}
NSLog(@"请输入要坐几排:\n");
scanf("%d\n",&row);
//这里必须要输入两次,程序才进入下一行。我输入了一次5,没有反应,要输入两次。。。
NSLog(@"xuanzedezuoweishi%d\n",row);
NSLog(@"请输入要买的座位:");
scanf("%d\n",&seat);
NSLog(@"选择的座位是%d排%d左\n",row,seat);
//NSLog(@"选择要看%@ %d排 %d座",movie.movie(i),row,seat);
//我试图在这里输出电影的完整信息,以movie.movie(i)的方式输出,显然是错了
NSLog(@"你确定要购买吗? y/n\n");
char ans = 'a';
rewind(stdin);
scanf("%c",&ans);
if(ans=='y'){
NSLog(@"购买成功");
}else{
NSLog(@"购买失败\n");
}
//程序勉强运行了起来,自己发现的错误都写在了注释中,还有一些我没发现的错误望老师能一并指出,感激不尽。
}
return 0;
}
正在回答 回答被采纳积分+1
for(int i = -1; i < 7; i++)
{
for(int j = -1;j < 15; j++)
{
if(i == -1)//说明在打印第1排
{
NSLog(@"%02d ",j+1);
}
else if(j == -1)//说明在打印第1列
{
NSLog(@"%02d",i+1);
}
else
{
NSLog(@" + ");
}
}
NSLog(@"\n");
}
座位表的展示如上代码,即可正确展示了。
NSLog(@"请选择排数[1,7]:");
int selectedRow = 0;
scanf("%d",&selectedRow);
NSLog(@"你选择的排数是:%d\n",selectedRow);
NSLog(@"请选择座位号[1,15]:");
int selectedCol = 0;
scanf("%d",&selectedCol);
NSLog(@"你选择的座位号是%d\n",selectedCol);
座位的选择如上所示,因为你的movie类并没有贴出来,所以我这边也没办法验证,但是这么建议你可以尝试一下。
movie.movie(i)这么获取信息是不对的,你得通过movie去调用他的相关属性进行获取。你可以先解决一下前面两个问题,这个问题你可以把movie类的相关信息给贴出来,然后在准确的帮助你解决。
- 参与学习 1337 人
- 提交作业 712 份
- 解答问题 1878 个
很多人都在疑问没有基础该怎么学习iOS开发?不用担心,本路径采用游戏关卡式的教学模式,并且以经典OC与最新Swift双重结合的教学内容,帮助大家快速掌握两种iOS开发语言基础,去掉“零”标签。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星