问题 问答题 简答题

所谓“回文数”是指读一个自然数,从正方向读和反方向读,结果是一样的。例如:646,1551,891232198都认为是回文数。编一个程序,输入一个正整数,判定它是否为回文数。当输入的数为0时,则退出程序,否则继续循环执行程序。

答案

参考答案:

ints,k;

inti,j;

int[]a=newint[20];

boolpos;

while(true)

{

s=-1;

while(s<0)

{

Console.Write("请输入一个正整数或者只按一个数字0:");

s=int.Parse(Console.ReadLine());

if(s==0)return;

}

k=s;

pos=true;

i=-1;

while(k>0)

{

i++;

a[i]=k%10;

k=k/10;

}

//注意:数组a的长度为(i+1)

for(j=0;j<(i+1)/2;j++)

if(a[j]!=a[i-j])

{

pos=false;

break;

}

if(pos)Console.WriteLine("{0}是回文数。",s);

elseConsole.WriteLine("{0}不是回文数。",s);

}

单项选择题
选择题