| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
根据键盘输入的整数n,计算s,其中: 
s = 1+1/3+1/5+……+1/(2*n-1) 
输入有k个用例,第一行为用例个数,接下来k行,每行一个整数,表示n。 
对每一个用例,根据上面公式计算s,并输出,要求保留两位小数(四舍五入)。 
#include <stdio.h> 
 
int main() 
{ 
     
        double a,d,b,n,s,x; 
        s=0; 
        scanf("%lf",&a); 
                for(b=1;b<=a;b++) 
                { 
                        scanf("%lf",&n); 
                        { 
                        for(d=1;d<=n;d++) 
                        x=1/(2*d-1); 
                        s=x+s; 
                 }  
                 printf("%.2f\n",s); 
                         
                } 
                 
                  
        return 0; 
} 
 
 
 
找不出错,但是答案不对
- #include <stdio.h>
 
  
- int main(void)
 
 - {
 
 -         int d , k , m , n[256]                                                                  ;
 
 -         float s[256]                                                                            ;
 
 -         scanf("%d" , & m)                                                                       ;
 
 -         for(k = 0 ; k < m ; k ++) scanf("%d" , & n[k])                                          ;
 
 -         for(d = 0 ; d < m ; d ++) for(s[d] = 1 , k = 3 ; k < 2 * n[d] ; k += 2) s[d] += 1.0 / k ;
 
 -         for(k = 0 ; k < m ; k ++) printf("n = %d , s = %.2f\n" , n[k] , s[k])                   ;
 
 - }
 
  复制代码
        编译、运行实况:
 - D:\00.Excise\C>g++ -o x x.c
 
  
- D:\00.Excise\C>x
 
 - 5
 
 - 8
 
 - 9
 
 - 10
 
 - 12
 
 - 13
 
 - n = 8 , s = 2.02
 
 - n = 9 , s = 2.08
 
 - n = 10 , s = 2.13
 
 - n = 12 , s = 2.22
 
 - n = 13 , s = 2.26
 
  
- D:\00.Excise\C>
 
  复制代码 
 
 
 
 |   
 
 
 
 |