编程计算100至1000之间有多少个数其各位数字之和是5。

 我来答
lxlyq888you
2019-09-21 · TA获得超过1727个赞
知道答主
回答量:45
采纳率:0%
帮助的人:5167
展开全部

以python语言为例,示例程序如下:

#定义统计数

count = 0

#轮询100-999数字

for i in range(100, 1000):  

#定义数字总数

    sum = 0

    for tem in str(i):

        #累加各位数

        sum = sum + int(tem)    

    if sum == 5:

        #判断累加总数等于5则统计数加1

        count = count + 1

        print i

#输出统计数 

print count

执行以上程序即可得到结果是15。


扩展资料

上述程序重点是range函数的使用,range() 函数可创建一个整数列表,一般用在 for 循环中。


Python中range()函数的用法如下:

函数原型:range(start, end, scan):

参数含义:

start:计数从start开始。默认是从0开始。例如range(5)等价于range(0, 5);

end:计数到end结束,但不包括end.例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5;

scan:每次跳跃的间距,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)。

冰旋华影
2016-05-15 · TA获得超过549个赞
知道小有建树答主
回答量:673
采纳率:0%
帮助的人:278万
展开全部
#include <iostream>
using namespace std;
int main()
{
int cnt=0;
for(int i=1;i<=5;i++)//百位
for(int j=0;j<=5-i;j++)//十位
cnt++;
cout<<cnt<<endl;
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dielsalder
2007-04-18 · TA获得超过3854个赞
知道大有可为答主
回答量:1864
采纳率:50%
帮助的人:2723万
展开全部
#include <stdio.h>
int main(void)
{
int i,s,k,count=0;
for(i=100;i<=1000;i++)
{ s=0;k=i;
while(k)
{ s=s+k%10;
k=k/10;
}
if(s!=5) continue;
else count++;
}
printf("%d",count);

return 0;
}

#include <stdio.h>
int getSum(int num)
{
char buf[10];
int sum = 0;
int i = 0;
sprintf(buf,"%d",num);
while(buf[i])
sum += buf[i++] - '0';
return sum;
}
int main(void)
{
int i;
for(i = 100; i <= 1000; i++)
if(getSum(i) == 5)
printf("%d\t",i);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cdyzxy
2016-05-15 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.4万
采纳率:84%
帮助的人:3559万
展开全部
#include<stdio.h>
void main()
{ int i,s,x;
for ( i=100;i<=1000;i++ )
{ x=i; s=0; while ( x ) { s+=x%10; x/=10; }
if ( s==5 ) printf("%d ",i);
}
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式