| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1056 人关注过本帖
标题:今天得作业题呀。。。
只看楼主 加入收藏
ydr206
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2004-10-12
收藏
 问题点数:0 回复次数:11 
今天得作业题呀。。。

今天老师给我们出了这样得题!

80+81+.....+89+810+811+.....+899+8100+8101+......+8999+81000

怎么做这道题呀。。

搜索更多相关主题的帖子: 作业 
2004-12-27 16:44
aniude
Rank: 2
等 级:新手上路
威 望:3
帖 子:231
专家分:0
注 册:2004-11-3
收藏
得分:0 
#include <stdio.h>
void main()
{
long int  i;
long int sum=0;
for(i=81;i<=81000;i++)
{
sum=sum+i;
}
printf("%ld",sum);
}

2004-12-28 10:55
14541304
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2004-12-27
收藏
得分:0 

楼上的你做错了,这个要求各位达到9以后乘10再累加

2004-12-28 14:56
断线风筝
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2004-5-20
收藏
得分:0 

这个程序还比较有点意思,我帮你写了, 用的递归,当然用for循环也可以做,主要是想练练手 #include <stdlib.h> #include "string.h" #include "math.h" #define Min 80 #define Max 81000 long sum(int n);

void main() { long a; a=sum(80); printf("sum=%ld",a); getchar(); }

long sum(int n) { int m; int flag;

//如果低于最小的或高于最大的返回0 if(n<Min||n>Max) return 0;

//计算除最高位以外所有的数字 m=n%((int)pow(10,(int)log10(n))); //判断除最高位外所有的数字是否全是9 if(m==0) flag=0; else flag=1; while(m!=0) { if(m%10!=9) { flag=0; break; } m=m/10; }

//如果各位达到9以后乘10再累加 //否则下一个数字递增1 if(flag) { m=(int)8*pow(10,(int)log10(n)+1)+pow(10,(int)log10(n)); return n+sum(m); } else { return n+sum(n+1); } }

2004-12-28 17:54
aniude
Rank: 2
等 级:新手上路
威 望:3
帖 子:231
专家分:0
注 册:2004-11-3
收藏
得分:0 
哈哈,睡眼惺忪,如果是考试那就惨了

2004-12-28 18:58
yuki
Rank: 2
等 级:新手上路
威 望:5
帖 子:508
专家分:0
注 册:2005-2-4
收藏
得分:0 

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

int main() { int i,j; long sum=80+81000; for(i=0;i<3;i++) { sum+=81*pow(10,i); for(j=81*pow(10,i)+1;j<90*pow(10,i);j++) { sum+=j; } } printf("The result is %ld\n",sum); getch(); return 0; }


我们都在命运湖上荡舟划桨,波浪起伏使我们无法逃离孤行;如果我们迷失方向,波浪将指引我们穿过另一天曙光
2005-02-24 15:03
lwamani
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2004-11-16
收藏
得分:0 
#include &lt;iostream&gt;
long Sum(int n,int first,int end);
void main(void)
{
   long m_jieguo;
   m_jieguo=80+Sum(9,81,89)+Sum(90,810,899)+Sum(900,8100,8999)+81000;
   cout&lt;&lt;m_jieguo&lt;&lt;endl;
}
long Sum(int n,int first,int end)
{
  long jieguo=n*(first+end)/2;
  return jieguo;
}

2005-02-24 17:13
Lucifer
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2005-2-25
收藏
得分:0 
好强都,我新来的
以后大家多多帮助啊

A Za A Za Fighting!!!~~
2005-02-25 10:15
tFinal
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2005-2-25
收藏
得分:0 
看来大家都没看懂这道题,把每个数字前的8去掉看看,是不是很清楚了,剩下的编程就是几行就搞定了
2005-02-26 01:17
白瓜
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2005-1-27
收藏
得分:0 
以下是引用tFinal在2005-2-26 1:17:12的发言: 看来大家都没看懂这道题,把每个数字前的8去掉看看,是不是很清楚了,剩下的编程就是几行就搞定了
高,上面的程序眼都看花了,还没怎么看清楚。 就是你这一句让我有了精神。呵呵 写程序,找到最佳方法是最好的。

---------------------------------- 我不想当菜鸟 所以 我一直在努力 ----------------------------------
2005-02-26 18:22
快速回复:今天得作业题呀。。。
数据加载中...
 
   



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

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