| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 965 人关注过本帖
标题:想过二级C的朋友进来!(编程题)
取消只看楼主 加入收藏
本人已死
Rank: 1
等 级:新手上路
威 望:1
帖 子:183
专家分:0
注 册:2005-9-20
收藏
 问题点数:0 回复次数:5 
想过二级C的朋友进来!(编程题)
偶以后每天都会发个二级C的编程题上来, 希望各位学C的新手支持偶啦,愿与大家互相学习,共同进步! 今天的题: 输入n输出s,n的范围是大于1小于100,公式s=1+(1+2^0.5)+(1+2^0.5+3^0.5)+(1+2^0.5+3^0.5+……+n^0.5)
搜索更多相关主题的帖子: 朋友 
2005-10-08 18:29
本人已死
Rank: 1
等 级:新手上路
威 望:1
帖 子:183
专家分:0
注 册:2005-9-20
收藏
得分:0 
偶做的:
#include<math.h>
#include<stdio.h>
double fun(int n){
 int i,j;
 double sum0=0,sum1=0;
 for(i=1;i<=n;i++){
  for(j=1;j<=i;j++)
   sum0+=sqrt(j);
  sum1+=sum0;sum0=0;
 }
return sum1;
}
main()
{int n;
printf("enter n:\n");
scanf("%d",&n);
if((n<=1)||(n>=100)){printf("data error!retry!");scanf("%d",&n);}
printf("the s=%lf",fun(n));
}

爸爸告诉我:女人喜欢有钱的男人;妈妈告诉我:女人喜欢有貌的男人。我翻翻钱包,又照照镜子,然后我哭了
2005-10-08 19:12
本人已死
Rank: 1
等 级:新手上路
威 望:1
帖 子:183
专家分:0
注 册:2005-9-20
收藏
得分:0 
三楼的程序有问题喔,得不到预期的结果,给N输入20则输出为S=534.188884
错在:
s(n)-s(n-1)=1+2^0.5+3^0.5+4^0.5+……+n^0.5
而不是等于s(n-1)+n^0.5
所以不能用sum=2*sum+sqrt(i)求和
不过三楼的想法很好,很有启发性!

[此贴子已经被作者于2005-10-9 0:39:55编辑过]



爸爸告诉我:女人喜欢有钱的男人;妈妈告诉我:女人喜欢有貌的男人。我翻翻钱包,又照照镜子,然后我哭了
2005-10-09 00:17
本人已死
Rank: 1
等 级:新手上路
威 望:1
帖 子:183
专家分:0
注 册:2005-9-20
收藏
得分:0 
楼上的:if(!(n>=0&&n<=100))中的"&&"应改为"||"
另外跟三楼的错误一样"sum=2*sum+sqrt(i);"这个表达式不能得到题目要求的结果
给N输入20则输出为S=534.188884
检验一下


爸爸告诉我:女人喜欢有钱的男人;妈妈告诉我:女人喜欢有貌的男人。我翻翻钱包,又照照镜子,然后我哭了
2005-10-09 10:59
本人已死
Rank: 1
等 级:新手上路
威 望:1
帖 子:183
专家分:0
注 册:2005-9-20
收藏
得分:0 
一样的啊,我给的只是N=20只是为了检验程序的正确性,N>20不妨碍啊

爸爸告诉我:女人喜欢有钱的男人;妈妈告诉我:女人喜欢有貌的男人。我翻翻钱包,又照照镜子,然后我哭了
2005-10-10 12:44
本人已死
Rank: 1
等 级:新手上路
威 望:1
帖 子:183
专家分:0
注 册:2005-9-20
收藏
得分:0 
嘿嘿,楼上的蛮心细的啊,这个问题已经考虑进去了,因为当N取100的时候刚好溢出,所以N有范围限定:0<N<100

爸爸告诉我:女人喜欢有钱的男人;妈妈告诉我:女人喜欢有貌的男人。我翻翻钱包,又照照镜子,然后我哭了
2005-10-10 13:07
快速回复:想过二级C的朋友进来!(编程题)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011994 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved