| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 718 人关注过本帖
标题:求救...............
只看楼主 加入收藏
漫天花雨
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-13
结帖率:100%
收藏
 问题点数:0 回复次数:7 
求救...............
大侠们来帮帮我........
小弟是一个新手,有个问题不清楚,想请教各位大侠们的帮助
题目如下


100   50      10
∑k + ∑k*k + ∑1/k   
k=1   k=1     k=1

#include<stdio.h>
void main()
{
  int sum=0,s1=0,s2=0,s3=0,k;
  for(k=1;k<=100;k++)
{
s1=s1+k;
  }
  for(k=1;k<=50;k++)
{
s2=s2+k*k;
}
for(k=1;k<=10;k++)
{
s3=s3+1/k;
}
sum=s1+s2+s3;
printf("sum is=%d\n",sum);
}
为什么结果是负数....?????

多谢好心人帮忙0.....
搜索更多相关主题的帖子: 100 
2008-07-15 13:16
hello_moto
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2008-7-15
收藏
得分:0 
你用的TC吧,16位的。
把int改成unsigned int试试。
2008-07-15 13:23
心若止水
Rank: 1
等 级:新手上路
帖 子:89
专家分:0
注 册:2008-4-9
收藏
得分:0 
好象表达式中第二项太大了,你改用float定义应该不会出现负数了。
2008-07-15 14:51
漫天花雨
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-13
收藏
得分:0 
嗯我试试
好像可以.....多谢................
2008-07-15 15:17
missiyou
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:531
专家分:218
注 册:2007-10-9
收藏
得分:0 
#include<stdio.h>
void main()
{
  int sum=0,s1=0,s2=0,s3=0,k;
  for(k=1;k<=100;k++)
{
s1=s1+k;
  if(k<10)
{s3=s3+1/k;
s2=s2+k*k;
}
else if(k<50)
s2=s2+k*k;
}
sum=s1+s2+s3;
printf("sum is=%d\n",sum);
}


减少点代码。
2008-07-15 16:51
漫天花雨
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-13
收藏
得分:0 
多谢回帖呵呵...............
2008-07-15 18:15
zhong0711101
Rank: 2
等 级:论坛游民
帖 子:156
专家分:25
注 册:2008-7-15
收藏
得分:0 
超越int的范围了吧,
2008-07-15 20:16
zhong0711101
Rank: 2
等 级:论坛游民
帖 子:156
专家分:25
注 册:2008-7-15
收藏
得分:0 
5# 代码有问题吧??
2008-07-15 20:17
快速回复:求救...............
数据加载中...
 
   



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

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