C/C++教程

C++语言:逢7过

本文主要是介绍C++语言:逢7过,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

题目:从1开始,遇到7的倍或者各位为7的数算一次,到N(0<N=10^7时共多少次?

思考:从一开始每个数字都要判断是否符合条件,并且每次判断都应该有两个条件,一是判断是否各位上有数字7,二是判断是否是7的倍数,

(1)函数部分:自定义函数首先应确保所判断数字为正数,再判断各位上是否有7,各位上应依次除以10,所以函数部分:

int pd(int kk){
    while(kk>0)
    {
        if(kk%10==7)
        return 1;
        kk=kk/10;
    }
    return 0;
}

(2)主体部分:判断是否为7的倍数,用sum统计判断的个数,再调用以上函数,所以主体部分:

int main()
{
    int n,sum=0,k=1;
    cin>>n;
    while(k<=n)
    {
        if(k%7==0)
        sum++;
        else if(pd(k)==1)
        sum++;
        k++;
    }
    cout<<sum<<endl;
    return 0;
}

完整代码:

#include<bits/stdc++.h>
using namespace std;
int pd(int kk){
    while(kk>0)
    {
        if(kk%10==7)
        return 1;
        kk=kk/10;
    }
    return 0;
}
int main()
{
    int n,sum=0,k=1;
    cin>>n;
    while(k<=n)
    {
        if(k%7==0)
        sum++;
        else if(pd(k)==1)
        sum++;
        k++;
    }
    cout<<sum<<endl;
    return 0;
}

考察的是函数的调用。


                    
这篇关于C++语言:逢7过的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!