首先说下while语句详解:
基本格式
“do-while语句”也称为“直到循环”。语句格式为:
do 循环体语句 while(表达式);
其中:
表达式——是C++中任一合法表达式,包括逗号表达式;其值是逻辑型,即1或0。
循环体语句——可以是单一语句,也可以是复合语句。
执行流程
do-while语句的执行流程示意图如左图所示,描述如下:
(1) 执行一次循环体语句;
(2) 计算表达式的值,若表达式的值为真(或非0),则重复上述过程;
(3) 直到表达式的值为假(或为0)时,结束循环。
你这里while(1)到底什么意思,这边举个例子:
int i = 100;
while(1){
i --;if ( i==0) break;
cout<< ‘*’;
}
意思是:
循环执行i--,直到i==0
while(1),不断循环下去,直到break
1代表真值.while(1)表是死循环.
一般这种写法中,退出条件是写在循环内的.
例子中循环内的break;就是退出条件.
这种循环一般用于循环退出条件不太容易化简为简单判断的情况.
也有使用for的写法
for(;;)
{
...
if(xxx)break;
}
在C/C++里面, 0为false, 非0为true
while(1)就代表不停循环, 直到调用break, 或者goto语句后才能退出
输入3.6 2.4输出1.5
scanf("%f%f", &a, &b);//3.6 2.4
c = a / b;//c=1.5
while (1) {
if (fabs(c) > 1.0) {
a = b;//a=2.4
b = c;//b=1.5
c = a / b;//c=1.6
} else bresk;
}
printf("%f\n", b);
}
1代表是真 就是说这个while括号里面的判断条件永远成立 就是死循环 这个程序的意思是一直判断C的值下去
最后当C的值等于或小于1的时候if语句条件不成立 转到else执行break语句(上面的bresk打错了)
break语句的功能是强行退出本次循环 所以它就强退出while(1)死循环
while(1)
是指循环条件为真,不过你这是C语言的语句- -||不是C++的...没看明白,你的程序要表示什么.如果在C++中,你的程序是不会被运行的..即使改成C++的