continue
#include "stdio.h"#include <iostream>
int main(void)
{
double pi=3.14159;
int r;
double area;
for(r=1;r<=10;r++)
{
area=pi*r*r;
if(area>100.0)
{
continue;
}
}
printf("r=%d,area=%g\n",r,area);
system("pause");
return 0;
}
这个程序我使用单步调试的时候,执行到 area=pi*r*r;之后就会跳转到for(r=1;r<=10;r++)了,不检查下面的if语句了,这是什么原因










首先有个错误,double这种浮点数据,要比较的话,别直接比计较,最好设个进度,用无限趋近某个值来判断相等。这是其一,其二,你说没有执行continue,直接在continue下个断点,然后Debug看有没有进来不就知道了。其三常量定义最后用const,要么就定义为宏。其四,根本就没用到C++的I/O流,你包含这个干啥#include <iostream>。其五遇到问题多思考,一般编译器或电脑是不会有问题的,最有可能有问题的是你的程序。OVER。