我的函数notFull(classc,reservations)似乎根本不返回0
if(notFull(classc,reservations)==0 )
{
printf("%s class is FULL.Would you like %s class\n?", classc==1? "First":"Economy",classc==2? "First":"Economy");
scanf(" %c",&ans);
if(ans=='Y'||ans=='y')
classc==1? classc=2:classc==2;
if(ans=='n'||ans=='N')
{
printf("Next flight is in 3 hours\n");
return 0;
}
函数notFull中的count变量似乎并没有增加,因此总是返回0。
int notFull(int classp,int reservationsp[])
{
int start,end,i=0,count=0;
if(classp==1)
{
start=1,end=5;
}
else if(classp==2)
{
start=6,end=10;
}
for(i=start;i<=end;i++)
{
if(reservationsp[i]==1)
++count;
printf("%d\n",count); //To check if count actually incremented
if(count==5)
return 0;
else
return 1;
}
}
答案 0 :(得分:0)
似乎计数必须增加,或者永远不等于5,才导致归零。 但是,您总是从第一次通过循环返回,因此您的函数肯定没有按照您的想法去做。 三元表达式也完全混淆了。 请多加注意,此功课需要大量帮助。