其实这道题思路无非就2个方法
【1】for/while 把每一个的数位的经过一次,看里面是否有二
【2】把数字变成字符串,使用find
#include <iostream>
#include<string>
#include<algorithm>
using namespace std;
bool panduan(int n){
string s=to_string(n);
if(s.find('2')!=-1) return false;
else return true;
}
int main()
{
int n,i;
cin>>n;
int cnt=0;
for(i=1;i<=n;i++){
if(panduan(i)) cnt++;
}
cout<<cnt;
// 请在此输入您的代码
return 0;
}