为啥我的代码一直输出零啊
#include<bits/stdc++.h>
using namespace std;
int n;
int main() {
cin>>n;
for(int i=1; i<=n; i++) {
if((int)sqrt(i)!=sqrt(i)) {
continue;
}
int l=0,ans=0,he=0,m;;
int a[100]= {0};
while(i) {
a[l]=i%8;
l++;
i=i/8;
}
for(int i=0; i>l; i++) {
ans+=a[i]*pow(10,i);
}
m=ans;
while(ans!=0) {
he=he*10+ans%10;
ans=ans/10;
}
if(he==m) {
cout<<i<<" ";
}
}
return 0;
}