我正在运行这个 C 程序,但它没有回答“答案是 10”,而是发回消息:“答案是 0”,即使它在正确的时间中断。
你能告诉我哪里出了问题吗?
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
int i;
for(int i = 0; i < 12; i++){
printf("Checking i = %d\n", i);
if(i + 90 == i * i) {
break;
}
}
printf("The answer is %d.\n", i);
}
最佳答案
问题是你有两个i
。
int main (int argc, const char * argv[])
{
int i; //Declares outer i
for(int i = 0; i < 12; i++) //Declares a NEW i
{
printf("Checking i = %d\n", i);
if(i + 90 == i * i)
{
break;
}
}
printf("The answer is %d.\n", i); //Uses the outer i
}
关于objective-c - 带break的for语句中的C逻辑错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7958189/