求助:输入数据判断,如何重复判断直到数据正确?
程序代码:
//网络问题,递推数列求值 #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。
如何能够重复判断输入数据是否正确,直到正确为止继续下面的程序,请指教!