问题描述
一个整数如果按从低位到高位的顺序,奇数位 (个位、百位、万位 ⋯⋯ ) 上的数字是奇数,偶数位 (十位、千位、十万位 ⋯⋯ ) 上的数字是偶数,我们就称之为 "好数"。
给定一个正整数 NN,请计算从 1 到 NN 一共有多少个好数。
输入格式
一个整数 NN。
输出格式
一个整数代表答案。
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
// 请在此输入您的代码
int n;int i;
scanf("%d",&n);
for(;n>0;n--)//遍历1-n的所有整数
{
for(int m=n;m>0;)//循环
{
if(m%2!=0)m/=10;//奇数位
else break;
if(m%2==0)m/=10;//偶数位
else break;
if(m==0)i++;//是好数
}
}
printf("%d",i);
return 0;
}
for(;n>0;n--)//遍历1-n的所有整数 { for(int m=n;m>0;)//循环 { if(m%2!=0)m/=10;//奇数位 else break; if(m%2==0)m/=10;//偶数位 else break; if(m==0)i++;//是好数 } }
!!!