C++ 为什么是";如果;不在循环中执行?
C++ 为什么是";如果;不在循环中执行?,c++,C++,coutnum%除数与divisior=0的除数为零,这通常会导致中止 您应该为其提供另一个初始值(可能1或2看起来不错,取决于用途) 此外,正如@KfirVentura指出的,您应该更新循环中的除数(或num),否则如果除数,循环将无限运行,“if”循环将不会在除数为0时运行,并且对于所有条件,都将给出运行时异常错误,这是显而易见的。尝试更改除数的值。尝试输入-1,然后cout int main(){ int num, suma=0, divisor=0; cout&
coutnum%除数
与divisior=0
的除数为零,这通常会导致中止
您应该为其提供另一个初始值(可能1
或2
看起来不错,取决于用途)
此外,正如@KfirVentura指出的,您应该更新循环中的除数
(或num
),否则如果除数,循环将无限运行,“if”循环将不会在除数为0时运行,并且对于所有条件,都将给出运行时异常错误,这是显而易见的。尝试更改除数的值。尝试输入-1
,然后cout
int main(){
int num, suma=0, divisor=0;
cout<<"Escribe un número"<<endl;
cin>>num;
cout<<num<<": ";
while(divisor<num){
if(num % divisor==0){
cout<<divisor;
}
}
cout<<"Fin";