输出1000以内所有各位数字之和为n的正整数,例如:如果输入的n是6,那么,105的各位数字之和1+0+5=6, 123的各位数字之和1+2+3=6,两者都满足要求。每行输出6列且右对齐。
输入格式:
n由用户输入
输出格式:
每行输出6列且右对齐。
输入样例:
6
结尾无空行
输出样例:
见下图
结尾无空行
#include<stdio.h>
int main()
{
int a,b,c,i,n,j=0,k;
scanf("%d",&n);
for(i=1;i<1000;i++)
{
c=i;
b=0;
while(c>0)
{
a=c%10;
c=c/10;
b=b+a;
}
/* 也可以用for循环来实现
for(int j=1;;j++)
{
m=k%10;
k=k/10;
s=s+m;
if(k<1)break; */
if(b==n)
{
printf("%6d",i);
j++;
if(j%6==0){printf("\n");
}
}
}
return 0;
}