我遇到以下算法的问题,应该怎么做才能解决这个问题 如果年份不是闰年,我会输入一年,我需要再次输入,直到键入的年份是闰年。
int year = 0;
BOOL yearC;
NSLog(@"Enter the year to be tested;");
scanf ("%i", &year);
yearC = ((year % 4 == 0 && year % 100 !=0)|| year % 400 == 0);
if ( yearC )
NSLog (@"It's a leap year.");
else
{
NSLog (@"Nope, it's not a leap year.");
scanf ("%i", &year);
}
}
答案 0 :(得分:3)
您可以使用while loop,以下代码应该适合您:)
只需设置yearC的起始值然后重复while块,直到yearC设置为YES(是闰年)
BOOL yearC = NO;
while(!yearC){
NSLog(@"Enter the year to be tested;");
scanf ("%i", &year);
yearC = ((year % 4 == 0 && year % 100 !=0)|| year % 400 == 0);
if ( yearC )
NSLog (@"It's a leap year.");
else {
NSLog (@"Nope, it's not a leap year.");
}
}