用C++求100~500之间各位数字之和等于6的所有整数

来源:百度知道 编辑:UC知道 时间:2024/06/11 08:14:45
用C++求100~500之间各位数字之和等于6的所有整数

#include<iostream>
using namespace std;
void main()
{
int a,b,i;
for (i=100;i<=500;i++)
{
a=i;
b=0;
while(a!=0)
{
b+=a%10;
a/=10;
}
if(b==6)
{
cout<<i<<endl;
}
}
}

算法很简单的
但是太多了,没时间做啊

用数组处理可以达到更高的效率

#include<iostream>

using namespace std;

int main()
{
char a[3]={0};
int i,j,sum;
for(i=100;i<=500;i++)
{
sum=0;
sprintf(a,"%d",i);
for(j=0;j<3;j++)
sum+=a[j]-'0';
if(sum==6)
cout<<i<<"\t\n";
}
return 0;
}