请教一个关于C语言的问题、

就是怎么求s=1+2+3+4...+n然后用intdouble型的s求n的最大值。,就是int-2^15~2^15-1short-2^15~2^15-1long-2^31... 就是 怎么求s=1+2+3+4...+n
然后 用int double 型 的s 求 n的最大值。,
就是 int -2^15~2^15-1
short -2^15~2^15-1
long -2^31~2^31-1
float -10^38~10^38
double -10^308~10^308
比如在int的范围有一个最大的s 从而对应一个最大的n。
怎么求。 谢谢。
展开
 我来答
夏雨天儿星星
2013-06-25 · TA获得超过219个赞
知道小有建树答主
回答量:155
采纳率:83%
帮助的人:58.8万
展开全部
#include<stdio.h>
#include<math.h>
void main()
{
 int s,m,size;
 s=sizeof(int);
 m=sqrt(pow(2,s*8)-7/4)-1/2;
 size=pow(2,s*8-1)-1;
 printf("%d=1+2+3……+m\n m最大为%d\n",size,m);
}

上面是int,如果是需要double,float等等的话可以手动输入用scanf,sizeof知道他们的字节数就ok了。

更多追问追答
追问
m=sqrt(pow(2,s*8)-7/4)-1/2;
size=pow(2,s*8-1)-1;
printf("%d=1+2+3……+m\n m最大为%d\n",size,m);
这三条语句还是不怎么清楚。
追答
那是s=1+2+.....+m;算一下m的值
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式