当前位置:编程学习 > C/C++ >>

问题一百二十:明明的幸运数

[plain]  Description 
 
明明是1993年3月3日出生的,他出生的年份,月数、日期都有数字3,他认为含有数字3的数都是他的幸运数,甚至凡是3的倍数的数他都非常喜欢,认为都是他的幸运数,现在给出一个正整数N,请你帮明明统计出1至N之间(包括1和N)有几个数字是明明的幸运数。  
 
Input 
 
输入数据只有一个正整数N(N<=32767)。 
 
Output 
 
输出数据只有一个整数,就是1至N之间明明的幸运数的个数。 
 
Sample Input 
 
 
10 
 
Sample Output 
 
 

Description

明明是1993年3月3日出生的,他出生的年份,月数、日期都有数字3,他认为含有数字3的数都是他的幸运数,甚至凡是3的倍数的数他都非常喜欢,认为都是他的幸运数,现在给出一个正整数N,请你帮明明统计出1至N之间(包括1和N)有几个数字是明明的幸运数。

Input

输入数据只有一个正整数N(N<=32767)。

Output

输出数据只有一个整数,就是1至N之间明明的幸运数的个数。

Sample Input


10

Sample Output


3
 


[plain] #include <stdio.h> 
 
int check(int num); 
 
int main() 

   int i; 
   int count; 
   int num; 
    
   count=0; 
   scanf("%d", &num); 
 
   for(i=1; i<=num; i++) 
   { 
       if(i%3==0) 
       { 
           count++; 
       } 
       else if(check(i)) 
       { 
           count++; 
       } 
   } 
 
   printf("%d", count); 

 
int check(int num) 

   int flag=0; 
 
   while(num) 
   { 
       if(num%10==3) 
       { 
          flag=1; 
       } 
       num/=10; 
   } 
 
   return flag; 

#include <stdio.h>

int check(int num);

int main()
{
   int i;
   int count;
   int num;
  
   count=0;
   scanf("%d", &num);

   for(i=1; i<=num; i++)
   {
    if(i%3==0)
    {
     count++;
    }
    else if(check(i))
    {
           count++;
    }
   }

   printf("%d", count);
}

int check(int num)
{
   int flag=0;

   while(num)
   {
       if(num%10==3)
    {
       flag=1;
    }
    num/=10;
   }

   return flag;
}
  

 \


 

补充:软件开发 , C语言 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,