1
已解决
尹宗鑫
新手守护
新手守护
1769 数字之和
题目描述 Description
输入一个整数n,求此数字各个位数里最大值和最小值的和。
输入描述 Input Description
一个整数n(0<=n<=100000)
输出描述 Output Description
各个位数中最大数和最小数的和
样例输入 Sample Input
样例一:1234
样例二:5
样例输出 Sample Output
样例一:5
样例二:10
数据范围及提示 Data Size & Hint
最大值和最小值可以相同
#include<bits/stdc++.h>
using namespace std;
void read()
{
int n,i=1,a[7],max1,min1;
min1=999999999;
max1=-999999999;
cin>>n;
while(n!=0)
{
a[i]=n%10;
n=n/10;
i++;
}
for(int j=1;j<=i;j++)
{
min1=min(a[i],min1);
max1=max(a[i],max1);
}
cout<<min1+max1;
}
int main()
{
read();
return 0;
}
10分
0
已采纳
丁振轩
资深光能
资深光能
定义 n; 输入>>n; int Max=n%10,Min=n%10; while(n>0) { if(Max<n%10) Max=n%10; if(Min>n%10) Min=n%10; n=n/10; } 输出<<Max+Min;
1
童梦圆
资深守护
资深守护
头文件自己打 { 长类型定义 d=0,x=9999,n; scanf("%d",&n); if(n==0) { cout<<"0"<<endl; return 0; } while(n!=0) { if(n%10>d) d=n%10; if(n%10<x) x=n%10; n/=10; } printf("%lld\n",d+x);//"%lld"printf长类型的必须这样写。cout不用 return 0; }
童梦圆在2018-11-02 08:35:54追加了内容
你编的太复杂,是没有把题目看清吧!
0