#include<stdio.h>
#include<math.h>
int main()
{
double a=0,b, c,n,m,i=0;
do{
m=a;
c=(9m-10)/5;
b=(12c-2)/2;
a=(20c-12b)/5;
i++;
n=a-m;
}
while(n<=0.0001);
printf("%f %f %f %f",a,b,c,i);
return 0;
}
c=-2
b=-13
a=(-40-12*(-13))/5 = 23.2
n=a-m = 23.2-0 = 23.2 > 0.0001
不满足n<=0001条件,自然循环结束了
do里面把n的值输出一下呗,循环体是n<=0.0001就继续循环?
如果循环条件是n>=0.0001就会循环执行多次。
j加入while (1)无限循环
#include <stdio.h>
#include <math.h>
int main()
{
double a = 0, b, c, n, m, i = 0;
while (1)
{
do
{
m = a;
c = (9m - 10) / 5;
b = (12c - 2) / 2;
a = (20c - 12b) / 5;
i++;
n = a - m;
} while (n <= 0.0001);
printf("%f %f %f %f", a, b, c, i);
}
return 0;
}