#include
#include
#include
using namespace std;
int Bit(int n);
int CircleNum(int m);
int bit[16];
int i,j=0,k=0;
int main()
{
int left,right;
cout<<"请输入最小值:";
cin>>left;
cout<<"请输入最大值:";
cin>>right;
for(i=left;i {
if(CircleNum(i)&&Bit(i))
{
cout if(i%10==0)
cout }
else
cout }
return 0;
}
int CircleNum(int m)
{
int t=10;
int n=0,c=0;
for(t;t {
n+=1;
}
int a[n+1];
for(i=n;i>=0;i--)
{
a[i]=m/((int)pow(10,i));
m=m%((int)pow(10,i));
}
int mid=(n+1)/2;
for(j=0;j {
if(a[j]==a[n-j])
c+=1;
}
if(c==(n/2)+1)
return true;
else
return false;
}
int Bit(int n)
{
int s;
for(i=0;i {
bit[i]=n%2;
n/=2;
if(n==1)
{
n=0;
}
}
for(i=16;i>=0;--i)
{
s+=bit[i]*((int)pow(10,i));
}
if(CircleNum(s))
return true;
else
return false;
}
int * a = new int[n+1];
还有别的错
#include<iostream>
#include<iomanip>
#include<math.h>
using namespace std;
int main()
{
int left,right;
cout<<"请输入最小值:";
cin>>left;
cout<<"请输入最大值:";
cin>>right;
char temp[100];
for(int i=left;i<=right;i++)
{
itoa(i, temp, 10);
int n = strlen(temp);
int j = 0;
for (; j < n / 2; j++)
{
if (temp[j] != temp[n - 1 - j]) break;
}
if (j == n / 2) cout << i << endl;
}
return 0;
}