一道题目
我刷OJ遇到了一道题,请大家帮我看一下,我是个小学生,实在想不出来给一个五位数n,判断其中最大的一个数位是不是小于7(C++) #include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int n; cin >> n;
int max_ = -1;
while(n) {
max_ = max(n%10, max_);
n /= 10;
}
if( max_ < 7 ) cout << "最大数位小于7!";
else cout << "最大数位不小于7!";
return 0;
} 本帖最后由 两手空空儿 于 2022-11-3 09:41 编辑
既然已经给定是一个5位数,
方法1,那把这个数除以10000,它就变成了一个个位数,再和7比较就可出结果
方法2,用这个数和70000比较,直接就可以有结果
int i;
cin >> i ;
i /=10000;
if(i < 7){
cout << "万位小于7" << endl;
}else {
cout << "万位不小于7" << endl;
}
if(i < 70000){
cout << "万位小于7" << endl;
}else {
cout << "万位不小于7" << endl;
}
本帖最后由 jackz007 于 2022-11-3 11:18 编辑
#include <stdio.h>
int main(void)
{
int d , m ;
scanf("%d" , & d) ;
for(m = d % 10 ; d ; d /=10) if(d % 10 > m) m = d % 10 ;
if(m < 7) printf("yes\n") ;
else printf("no\n") ;
}
编译运行实况:
D:\\C>g++ -o x x.c
D:\\C>x
55876
no
D:\\C> #include <iostream>
using namespace std;
int main()
{
char s,i=0;
cin >> s;
for(i=0;s&&s<'7';i+=1);
if(s)cout<<">=7"<<endl;
else cout<<"<7"<<endl;
return 0;
}
页:
[1]