第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;
}

运行结果:

时间: 2024-09-29 19:19:56

第18周OJ测试项目6--用数字造数字的相关文章

第18周OJ测试项目5--保密电文

某电报局的电文保密的规律是将每个英文字母变成其后的第4个字母(很原始的那种啦),如A变成E,a变成e.最后四个字母(W,X,Y,Z或w,x,y,z)又变成前4个字母(A,B,C,D或a,b,c,d).非字母字符不变.输入一行字母,要求输出对应的加密后的文字 . 代码如下: #include <iostream> #include <cstdio> using namespace std; int main() { char str[100]; int i=0; gets(str);

18周OJ测试项目1--百位数答应了

m是个三位的整数,家里出了点小麻烦.个位数和十位数一直对百位数凡事都先露脸心怀不满,想出个办法,联手向百位数发起挑点.他们两个先相加,再减去百位数,以相减结果得到正值为傲.大度的百位数答应了:不就是陪着这两个无聊的家伙解闷嘛.请你编程序,帮他们一比高低. 代码如下: #include <iostream> using namespace std; int main( ) { int m, a, b, c; cin>>m; a=m/100; c=m%10; b=(m%100)/10;

第18周OJ测试项目2--关灯

输入n(1~500)盏灯并编号,输入1~9(包含1和9)的数字m,灭掉编号中带m的数及m倍数的灯,最后输出亮出的灯的编号. 代码如下 #include <iostream> using namespace std; int main() { int m,n,i; cin>>n>>m; for(i=1; i<n; ++i) { if ((i%m!=0)&&(i%10!=m)&&((i/10)%10!=m)&&((i/1

第18周OJ测试项目3--数组成绩统计

定义一个5行3列的二维数组,各行分别代表一名学生的高数.英语.C++成绩.再定义一个有5个元素的一维数组,用于存储每名学生的平均成绩.请输入学生的各门课成绩,输出带平均成绩的成绩单,以及所有学生平均成绩的平均值. 代码如下: #include<iostream> #include <iomanip> using namespace std; int main() { int score[5][3]; double average[5]; int i,j; double sum=0;

第18周OJ测试项目4--找出素数

输入若干个正整数,将其中的素数输出来. 代码如下: #include <iostream> #include <cmath> using namespace std; bool isPrime(int n); int main( ) { int n; while(cin>>n) { if(isPrime(n)) cout<<n<<endl; } return 0; } bool isPrime(int n) { int i; for (i=2;

第14周OJ平台项目——杨辉三角

问题及代码 #include <iostream> #include <string> using namespace std; int main() { int a[30][30],n,x,y; cin>>n; for(x=0; x<n; x++) { a[x][0]=1; a[x][x]=1; } for(x=2; x<n; x++) for(y=1; y<x; y++) a[x][y]=a[x-1][y-1]+a[x-1][y]; for(x=0

2017-2018-1 20155232 《信息安全系统设计基础》第十周课堂测试(ch06)补交

# 2017-2018-1 20155232 <信息安全系统设计基础>第十周课堂测试(ch06)补交 上课时完成测试后在提交的时候,没有提交成功,进行补交. 1.下面代码中,对数组x填充后,采用直接映射高速缓存,所有对x和y引用的命中率为() A 1 B 1/4 C 1/2 D 3/4 正确答案: D 解析:p431----缓存命中:当程序需要第(k+1)层的数据对象d的时候,首先会在第k层找d:如果d刚好缓存在第k层,那么就叫做缓存命中:反之,不命中,在填充了之后,对于x和y数组,只有在引用

20175325 第一周结对编程项目 四则运算

20175325 第一周结对编程项目 四则运算 一.需求分析: 能根据用户输入的数字生成四则运算的题目数量 能自动生成规定范围内的四则运算题目(加.减.乘.除) 能够判断四则运算的结果是否正确并进行数量统计 能多次生成四则运算题目 支持多运算符 用户能够选择是否开始答题 统计题目正确率 题目去重 多语言支持:简体中文, 繁體中文, English 文件: 处理生成题目并输出到文件 完成题目后从文件读入并判题 二.设计思路: 和之前所学的C语言中的四则运算方法作类比,在JAVA中运用了C语言里的一

20175325 第二周结对编程项目 四则运算

20175325 第二周结对编程项目 四则运算 一.需求分析: 实现一个命令行程序,要求: 自动生成小学四则运算题目(加.减.乘.除) 支持整数 支持多运算符(比如生成包含100个运算符的题目) 支持真分数 统计正确率 题目去重 能多次生成四则运算题目 能根据用户输入的数字生成四则运算的题目数量 多语言支持: 简体中文, 繁體中文, English 文件: 处理生成题目并输出到文件 完成题目后从文件读入并判题 用户能够选择是否开始答题 二. 设计思路: 产生随机数并且考虑符号的优先级. 能实现整