根据题目递归即可,用while函数判断是否到达1000项,内部用abs函数(绝对值函数)判断是否收敛,最后按照结果输出即可。
#include<bits/stdc++.h>//万能头
int main()
{
double x1,r;
scanf("%lf%lf",&x1,&r);
double x2;
int n=0;//纪录项数
while(n<999){//注意n从0开始,到1000项时n=999!
x2=r*x1*(1-x1);
if(abs(x2-x1)>=0.00001)//判断是否收敛
n++;
else
break;
x1=x2;
}//递归
if(n==999){
printf("%.4.lf 0",x2);
}
else {
printf("%.4lf 1",x2);
}
return 0;
}
数学问题,读懂题意就不难。