|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
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>
复制代码
|
|