水题,思路很简单:先计算好存放在数组中,然后查表,估计数量比较小,没有优化查找算法
#include <stdio.h>
#include <math.h>
int main()
{
    double x[400],t,s=0;
    int i,c,k;
    freopen("in.txt","r",stdin);
    freopen("out.txt","w",stdout);   
    for(k=2,c=0;s<5.20;)
    {
          s+=1.0/(double)k;
          k++;           
          x[c++]=s;
            
                       }
   
    while(1)
    {
          scanf("%lf",&t);
          if(fabs(t-0)<1e-6) break;
          for(i=0;i<c;i++)
          {
               if(x[i]>=t)
                    { printf("%d card(s)\n",i+1);break;          
                    }
          }
    }
    return 0;
}
本文来源于网络小筑 http://www.iwebtrados.com.cn/ , 原文地址:http://www.iwebtrados.com.cn/post/207.html