求助:计算1+1/3+1/5+......+1/99的和
#include <stdio.h>void main()
{
int a=1,n,b;
float s;
do
{
s=s+(float)a/b;
printf("s=%f\n",s,b);
b=1+(n-1)*2;
}while(n==50);
}
不知道这个程序错在哪里,希望 哪位高手帮忙指教,谢谢
Cy_Chance 给我的信息,他(她)很好的解决了这个问题,现在把它贴在这里,给大家分享:
第一觉得你的 b没有赋值 那么按默认应该是 0 这样是否要报错?
第二你怎么控制的循环变量 即 n 值怎么改变的?
n+=2;控制循环变量!到 n>99
#include <stdio.h>
void main()
{
int n;
int b=1;
float a=1.0;
float sum=0.0;
for(n=0;n<99;n+=2)
{
sum+=(float)(a/(b+n));
}
printf("1+1/3+1/5+......+1/99结果:\n");
printf("%.3f",sum);
getchar();
}
再次感谢Cy_Chance的支持!!!
[此贴子已经被作者于2007-10-17 11:48:32编辑过]