请老大们指导一下
下面是个求100到1000之间各个位数和等于5的整数个数,并且依次输出的程序,总觉的自己编的过于麻烦了,请老大们指导一下如何改进
#include<iostream.h>
#include<string.h>
void main()
{
int a[1000-100];
int num=0,i,j,hunder,ten,unit;
for(i=100;i<1000;i++)
{
hunder=i/100;
ten=(i-hunder*100)/10;
unit=i-hunder*100-ten*10;
if(hunder+ten+unit==5)
{
a[num]=i;
num++;
}
}
cout<<"100到1000之间各个位数之和等于5的整数有"<<num<<"个"<<endl;
cout<<"这十五个数字是:"<<endl;
for(i=0;i<num;)
{
for(j=0;j<5;j++)
{
cout<<a[i]<<",";
i++;
}
cout<<endl;
}
}