首页 > 代码库 > 第18周OJ测试项目6--用数字造数字
第18周OJ测试项目6--用数字造数字
输入一个3位以上的整数,求其中最大的两个数字之和与最小的数字之和之间的差。例如:输入8729,输出8,即(9+8)-(2+7)=8,再如,输入24825,输出9,即(8+5)-(2+2)=9。
代码如下:
#include <iostream> using namespace std; int main() { int str[10]; int i = 0, n, m, j, t; cin >> n; do { str[i++] = n % 10; n=n/10; } while (n != 0); m = i ; for (i = 0; i < m-2; i++) { for (j = 0; j < m -1- i; j++) { if (str[j] > str[j + 1]) { t = str[j]; str[j] = str[j + 1]; str[j + 1] = t; } } } cout << ((str[m-1] + str[m -2]) - (str[1] + str[0])); return 0; }
运行结果:
第18周OJ测试项目6--用数字造数字
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。