杭电2010

2025-12-03 19:11:32
推荐回答(1个)
回答1:

你在输出最后一个数字后面还有一个空格printf("%d ",a[i]);
你把上面%d后面的空格改成# 你就知道了

#include "stdio.h"

int sxh(int n){
int i,sum=0;
while(n){
i=n%10;
n=n/10;
sum+=i*i*i;
}
return sum;
}

int main()

{ int m,n;
while(scanf("%d%d",&m,&n)!=EOF){
if(m>=100&&m<=n&&n<=999){
int i,j=0,a[50];
int f=1;

for(i=m;i<=n;i++)

if(sxh(i)==i){
a[j++]=i;
f=0;
}

if(f){
printf("no\n");
}
else {

for(i=0;i {
//下面修改过
if(i==j-1)
printf("%d\n",a[i]);

else printf("%d ",a[i]);
} }} }

return 0;
}