编写一个程序判定用户输入的正整数是否是"回文数",所谓回文数是指正读反读都相同的数. 由陵轹发表http://www.programfan.com/club/showbbs.asp?id=134790 #include int main(){ int m, i,j = 0; scanf("%d",&m); i = m; while(m > 0){ j = j * 10 + m % 10; m /= 10; } if(i == j)printf("Is"); else printf("NO"); return 0;}; ***************************http://www.programfan.com/club/showbbs.asp?id=135071 回文数是从左边往右读或者从右边往左读都一样的数比如 1, 121,12321,33433,123454321编程求从1开始的第n个回文数f(1) = 1f(2) = 2...f(9)=9f(10)=11f(11)=22... f(24)=151f(10000)=9001009.......输入一个正整数 n 输出这个回文数。pcboyxhy的答案(不懂~~~~)#include <iostream.h>int main(int argc, char *argv[]){ long long n, k, l; while(cin>>n) { if(!n) break; for(l=18; n>l; l*=10) n-=l; l/=2;k=1; if(n>l){ k=0; n-=l;} l/=9; n+=l-1; l=n; if(k) n/=10; while(n>0) { l*=10; l+=n%10; n/=10; } cout<<l<<endl; } return 0;}

评论