求助:输入数据判断,如何重复判断直到数据正确?
程序代码://网络问题,递推数列求值
#include<stdio.h>
int main(void)
{
int i,n;
double f[15];
f[0]=0,f[1]=1;f[2]=2;
printf("请输入你的数值n(2~13):");
scanf("%d",&n);
if(n<2||n>13)
{
printf("请重新输入你的数值n!") ;
scanf("%d",&n);
}
for(i=2;i<=13;i++)
{
f[i+1]=2*f[i]+f[i-1]*f[i-2];
}
printf("数列中对应值为:%f。\n",f[n]);
return 0;
}
/*#include<stdio.h>
int main(void)
{
int i;
double f[15];
f[0]=0,f[1]=1,f[2]=2;
for(i=2;i<=13;i++)
{
f[i+1]=2*f[i]+f[i-1]*f[i-2];
}
printf("f[0]=0\n");
printf("f[1]=1\n");
for(i=2;i<=13;i++)
printf("f[%d]=%f\n",i,f[i]);
return 0;
}*/这是我编的代码,有一个问题就是如果两次重复输入错误数值(即n<2||n>13)程序输出为0。
如何能够重复判断输入数据是否正确,直到正确为止继续下面的程序,请指教!




