题目来源自mooc:程序设计入门——C语言,仅供本人个人学习参考使用
#include <stdio.h>
#include <math.h>
int main(){
int num = 0,count = 0;
int a = 0,flag = 0;//a指单个数字,flag指数位
scanf("%d",&num);
do{
//取末尾数,去末尾数
a = num%10;
num /=10;
flag += 1;
//检验数字与数位奇偶性是否相等,相等加上2的n次方
if(a%2 == flag%2){
count = count + pow(2,flag-1);//注意平方写法
}
}while(num>0);
printf("%d",count);
return 0;
}