#include"stdio.h"
void huiwen();
int main()
{
huiwen();
return 0;
}
void huiwen()
{
int t,a[5],n;
long int i,k;
for(i=10000;i<=99999;i++)
{
k=i;
t=4;
n=0;
while(k!=0)
{
a[t]=k%10;
k=k/10;
t--;
}
if((a[0]==a[4])&&(a[1]==a[3]))
{
n++;
printf("回文数为:%d\n",i);
}
}
printf("回文数共%d个!",n);
}
N的声明周期到头了,你看看大括号{ }的意义。
n初始化位置不对,每次循环都变为0了。
#include"stdio.h"
void huiwen(void);
int main()
{
huiwen();
return 0;
}
void huiwen(void)
{
int t,a[5],n;
long int i,k;
n=0; //放这里
for(i=10000;i<=99999;i++)
{
k=i;
t=4;
while(k!=0)
{
a[t]=k%10;
k=k/10;
t--;
}
if((a[0]==a[4])&&(a[1]==a[3]))
{
n++;
printf("回文数为:%d\n",i);
}
}
printf("回文数共%d个!",n);
}