c语言题型求解

x_yanx 2010-10-24 10:45:59
1+1/2+1/3+.......+1/n直到1/n<10的-5次方,如何写一个c语言程序
...全文
211 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
x_yanx 2010-10-27
  • 打赏
  • 举报
回复
就是VC6
bianchen19871019 2010-10-27
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 x_yanx 的回复:]

1.0/i >= 1e-5; 不是小于吗?
[/Quote]

如果是小于的话都不用算了,应该是大于10的-5次方才对的
wizard_tiger 2010-10-27
  • 打赏
  • 举报
回复

#include <stdio.h>

int main()
{
int i;
double sum=1;
printf("1+");
for(i=2;1.0/i>=1e-5;++i)
{
sum+=1.0/i;
printf("1/%d+",i);
}
printf("=%f\n",sum);
system("pause");
return 0;
}
clc0925 2010-10-26
  • 打赏
  • 举报
回复
得先问问lz是用的什么编译器,vc6.0?学的是哪个版本的C?计算机等级考试的?
huanmie_09 2010-10-25
  • 打赏
  • 举报
回复

#include <stdio.h>
#include <math.h>

int main(int argc, const char *argv[])
{
int i;
double dsum;
for (dsum = 0, i = 1; 1.0/i >= 1e-5; i++) {
dsum += 1.0/i;
}
printf("%.5lf\n",dsum);
return 0;
}
jihen 2010-10-25
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 bobo364 的回复:]

dsum += 1.0/i;
逻辑就是这句,1楼的结束条件有误,逻辑正确
C/C++ code
#include <stdio.h>
int main()
{
int n,i;
double dsum;
scanf("%d",&n);
for (dsum = 0, i = 1; 1.0/i >= 1e-5; i++)
{
dsum += 1.0/i;
……
[/Quote]
汗。。。做题做多了,以为 10的-5次为一个极限值而已,
要得到这个,你直接改n = 100000就可以了。
千杯不醉-sen 2010-10-25
  • 打赏
  • 举报
回复

#include <stdio.h>
#include <math.h>
#include <stdlib.h>

void main( void )
{
int i = 1,n;
double sum = 0;
puts("please input a digit:");
scanf("%d",&n);

for (i = 1; 1.0/i >= 1e-5; ++i)
{
sum += 1.0/i;
printf("1/%d+",i);
}
printf("\b=%.6lf\n",sum);
system("pause");
}
1+1/2+...+1/99999+1/100000=12.090146
请按任意键继续. . .
bobo364 2010-10-25
  • 打赏
  • 举报
回复
dsum += 1.0/i;
逻辑就是这句,1楼的结束条件有误,逻辑正确
#include <stdio.h>
int main()
{
int n,i;
double dsum;
scanf("%d",&n);
for (dsum = 0, i = 1; 1.0/i >= 1e-5; i++)
{
dsum += 1.0/i;
}
printf("%.5lf\n",dsum);
system("pause");
return 0;
}
ruanxuewu0120 2010-10-25
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 jihen 的回复:]
引用 8 楼 bobo364 的回复:

dsum += 1.0/i;
逻辑就是这句,1楼的结束条件有误,逻辑正确
C/C++ code
#include <stdio.h>
int main()
{
int n,i;
double dsum;
scanf("%d",&amp;n);
for (dsum = 0, i = 1; 1.0/i >= 1e-5; i++)
……
[/Quote]
是啊,10的-5次方也不是非常大啊,哈哈
zhutianjin4355255 2010-10-25
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 huanmie_09 的回复:]
C/C++ code

#include <stdio.h>
#include <math.h>

int main(int argc, const char *argv[])
{
int i;
double dsum;
for (dsum = 0, i = 1; 1.0/i >= 1e-5; i++) {
dsum += 1.0/i;
……
[/Quote]


四楼正解,我也差点被误解了
purewqk 2010-10-25
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 huanmie_09 的回复:]
C/C++ code

#include <stdio.h>
#include <math.h>

int main(int argc, const char *argv[])
{
int i;
double dsum;
for (dsum = 0, i = 1; 1.0/i >= 1e-5; i++) {
dsum += 1.0/i;
……
[/Quote]
正解~~~
x_yanx 2010-10-25
  • 打赏
  • 举报
回复
1.0/i >= 1e-5; 不是小于吗?
yg2362 2010-10-25
  • 打赏
  • 举报
回复
错了是1楼误导别人
yg2362 2010-10-25
  • 打赏
  • 举报
回复
2楼在误导别人嘛。4楼正解
x_yanx 2010-10-24
  • 打赏
  • 举报
回复
不用自己输入数据 直接运行就出结果的改怎么说?
jihen 2010-10-24
  • 打赏
  • 举报
回复
#include <stdio.h>

int main(int argc, const char *argv[])
{
int n,i;
double dsum;
scanf("%d",&n);
for (dsum = 0, i = 1; i <= n; i++) {
dsum += 1.0/i;
}
printf("%.5lf\n",dsum);
return 0;
}


这个应该可以了。具体逻辑比较简单,看不懂可以问

69,381

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧