问题标题: 酷町堂1592   venus的7怎么做?(0)

0
0
已解决
李牧之
李牧之
新手光能
新手光能
#include<iostream>
#include<string>
using namespace std;
int main(){
    int x,k;
    cin>>x;
    for(k=1;k<=x;k++){
        int n,ans,tmp;
        cin>>n;
        ans=n;
        for(int i=1;i<=n;i++){
            tmp=i;
            while (tmp>0){
                if (tmp%10==7) ans--;
                tmp/=10;
            }
        }
        cout<<ans<<endl;
    }
    return 0;
}

大佬教我!请给思路!谢谢!

李牧之在2018-01-10 20:35:54追加了内容

http://judge.codingtang.com/problem/1592/


1
已采纳
栾峻岩
栾峻岩
初级天翼
初级天翼

定义一个函数,让一个数把他拆开,要用for循环里面加一个while循环,在函数里面定义一个s,每次循环是s都被赋值为i,再把s给拆开。

函数核心程序:

while (s!=0)
        {
            n=s%10;
            if (n==7) 
            {
                r++;
                break;
            }
            s/=10;
        }

最后返回x-r;

主程序中来个for循环,依次输出,别忘了每次输出后换行哦!

0
0
王祥润
王祥润
新手守护
新手守护

while (s!=0)

 

{

 

n=s%10;

 

if (n==7)

 

{

 

r++;

 

break;

 

}

 

s/=10;

 

}


 

最后返回x-r;

主程序中来个for循环,依次输出,别忘了每次输出后换行哦!

0
-1
葛新
葛新
资深守护
资深守护

你提交的是wa,还是什么?

我要回答