问题描述
若一个非负整数其各位数字按照正反顺序读完全相同,则称之为回文数,例如12321。
判断输入的整数是否是回文数。若是,则输出该整数各位数字之和,否则输出no。
输入说明
输入为一个整数n,0<=n<100000000。
输出说明
若该整数为回文数,则输出整数各位数字之和,否则输出no。
输入样例
样例1输入
131
样例2输入
24
输出样例
样例1输出
5
样例2输出
no
#include <iostream>
#include<string.h>
#include<stdio.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char *argv[]) {
char str[10000];
int i,j;
scanf("%s",str);
int sum = 0;
int len = strlen(str);
for(i = 0, j = len-1; i < j; i++,j--){
if(str[i]!=str[j])
break;
}
if(i<j)
printf("no");
else{
for(i=0; i < len; i++) {sum += (str[i]-'0');} //这里注意一下对每个字符型的数字都要和0做下运算
printf("%d",sum);
}
return 0;
}