加一

描述

给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。

最高位数字存放在数组的首位, 数组中每个元素只存储单个数字,数组的长度不超过1000

你可以假设除了整数 0 之外,这个整数不会以零开头。

例如数组{1,2,3,4,5},表示12345,加一的结果是12346,你只需要输出12346即可。

输入

输入有两行,如下:

第1行:一个整数n,表示数组长度

第2行:具体的n个数位,均为0~9的整数

输出

加一后的结果

输入样例 1

3
1 1 9

输出样例 1

120
#include <stdio.h>
#include <stdlib.h>
int main()
{int n,a[1005];scanf("%d",&n);for(int i=0;i<n;i++)scanf("%d",&a[i]);a[n-1]+=1;for(int j=n-1;j>0;j--){a[j-1]+=a[j]/10;a[j]%=10;}for(int k=0;k<n;k++)printf("%d",a[k]);return 0;
}

股票交易

描述

从键盘输入一组正整数,它的第i个数表示特定股票第i天的价格。限定最多只能进行一次买卖,请编写程序计算可获得的最大利润,并将买入日期序号,卖出日期序号和最大利润输出。允许不交易,则对应利润为0。

输入

第一行,输入进行交易的天数N(N \le 100N≤100)

第二行,N个正整数(中间以空格分隔)

输出

买入日期序号 卖出日期序号 最大可能利润。

日期序号从1开始,即:第一天为1,第二天为2,依此类推。不进行交易则买入日期、卖出日期和利润均为0。

输入样例 1

11
3 4 9 1 5 8 3 6 4 7 3

输出样例 1

4 6 7

输入样例 2

7
9 8 6 6 5 4 2

输出样例 2

0 0 0
说明:表示未进行交易
#include <stdio.h>
#include <stdlib.h>int main()
{int price[30];int n;int max=0,buy=0,sell=0;scanf("%d",&n);for(int i=0;i<n;i++)scanf("%d",&price[i]);for(int i=0;i<n-1;i++){for(int j=i+1;j<n;j++)if(price[j]-price[i]>max){buy =i ;sell = j;max = price[j]-price[i];}}if(max!=0) printf("%d %d %d",buy+1,sell+1,max);else printf("%d %d %d",buy,sell,max);return 0;
}

神秘的风洞

描述

传说有一个神秘的风洞,风洞中的魔镜可以把任何咒语变成原来的两倍,不过增加的那部分咒语是反过来的。例如,对于原始咒语“XY”,一旦碰到魔镜就会被变为“XYYX”;若咒语再次碰到魔镜,就会继续变成一个新的咒语“XYYXXYYX”。要求:从键盘输入一串最终听到的咒语(长度<=255),请编程求出该咒语在风洞中可能碰到魔镜的最大次数和对应的原始咒语,并将它们输出,该咒语也可能从未碰到魔镜,则输出次数0。

输入

一行字符串(中间无空格)

输出

空格隔开的两个部分,分别表示碰撞次数和原始咒语

输入样例 1

XYYXXYYX

输出样例 1

2 XY

输入样例 2

XYYY

输出样例 2

0 XYYY
#include<stdio.h>
#include<string.h>int main()
{char str[256];int count = 0;gets(str);int len = strlen(str);while(1){if(len%2!=0) break;int i=0;int j=len-1;while(i<j){if(str[i]!=str[j])break;i++,j--;}if(i<j)break;else{count++;len = len/2;}}str[len]='\0';printf("%d %s\n",count,str);
}

数字黑洞

描述

数字黑洞是这样一种现象:任意选一个四位数(数字不能完全相同),把所有数字从大到小排列,再把所有数字从小到大排列,用前者减去后者得到一个新的数。重复对新得到的数进行上述操作,7步以内必然会得到6174。

例如输入2088,则2步即可得到结果。变换的每一步为:

8820-288=8532(注:排序后的数可能不足4位,此时认为高位为0)

8532-2358=6174

编程实现以上过程,将每一步的变换过程显示在屏幕上。

输入

一个四位数,保证四个数字不全相同

输出

每一步变换的结果

输入样例 1

6767

输出样例 1

7766-6677=1089
9810-189=9621
9621-1269=8352
8532-2358=6174
#include<stdio.h>
#include<string.h>int main()
{int num,a[4];scanf("%d",&num);while(1){int max=0,min=0;for(int i=0;i<4;i++){a[i]=num%10;num/=10;}for(int i=0;i<3;i++)for(int j=i+1;j<4;j++)if(a[j]<a[i]){int temp;temp=a[i];a[i]=a[j];a[j]=temp;}for(int i=0;i<4;i++)min=min*10+a[i];for(int i=3;i>=0;i--)max=max*10+a[i];if(max-min==6174){printf("%d-%d=%d\n",max,min,max-min); break;}elseprintf("%d-%d=%d\n",max,min,max-min);num=max-min;}
}

厦大2021级期末上机考试相关推荐

  1. c语言设计课程期末上机考试海大,(海大试卷.docx

    (海大试卷 中国海洋大学07-09年线性代数期末考试题及答案 /dispbbs.asp?boardid=19&Id=71959&page=10模拟电子技术.rar003-2008学年数 ...

  2. 厦大C语言上机 2020年期末上机考试 校验ISBN

    校验ISBN 描述 国际标准书号ISBN共17位,由13位数字和4位连字符("-")组成.最后1位数字表示校验位,校验规则为:对从左至右前12位数字,分别计算奇位数之和s1与偶位数 ...

  3. 厦大C语言上机 2020年期末上机考试 整数编号

    整数编号 描述 有一个长度不超过100的整数数组a,每一个元素ai满足:0<ai≤100 现在对a的元素按照从小到大的顺序,从1开始进行编号,输出各个元素的编号值.要求不能改变数组a中元素的顺序 ...

  4. 厦大C语言上机 2020年期末上机考试 移车问题

    移车问题 描述 校门口有100个车位(编号为1,2,...,100)停满了共享单车,为了移走部分单车以方便通行,学校派了N个志愿者去移车,每个志愿者的任务单有两个数字L和R(1<=L<=R ...

  5. 厦大计算机数据结构期末试卷,2019厦门大学875数据结构与操作系统考试范围(大纲)和参考书目...

    原标题:2019厦门大学875数据结构与操作系统考试范围(大纲)和参考书目 由于厦门大学大部分专业课官方没有公布参考书目由此给很多考生带来了很大的不便,对此精都考研网整理了厦门大学往届研究生初试用书对 ...

  6. 2018级《程序设计基础(B)II》期末上机考试 重现--SDUT

    学位证 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 众所周知,在山东理工大学拿到学 ...

  7. 2012级计科《程序设计基础Ⅱ》期末上机考试

    上升子序列 Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 一个只包含非负整数的序列bi,当b1 < b2 < ... ...

  8. 2018级《程序设计基础(B)I》期末上机考试 重现(第二场)

    御坂美琴与妹妹们 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 在[量产型能力者计划 ...

  9. 2018级《程序设计基础(B)II》期末上机考试( 题解)

      A [4522] - 学位证     B [4519] - 猜数游戏       C [4517] - easy math problem       D [4516] - 排队买饭       ...

最新文章

  1. Java Code Convention Rules
  2. 动态调用有关的方法?
  3. BZOJ-2588-Count-on-a-tree-SPOJ10628-LCA+主席树
  4. Angularjs 设置全局变量的3种方法
  5. C#判断点和直线的位置关系
  6. Java后端开发需要具备哪些知识结构
  7. jbod ugood 磁盘驱动状态_LSI Storcli 工具使用
  8. 图像融合(五)-- 梯度金字塔
  9. 数组Array和字符串String的indexOf方法,以及ES7(ES2016)中新增的Array.prototype.includes方法...
  10. Matlab实现GM(1,1)模型(源代码)
  11. Microsoft Visual Studio 2010(vs2010) 中文版安装
  12. 安卓系统添加字体库和修改系统默认的字体
  13. 2012服务器系统有什么版本的,Windows server 2012操作系统有哪几个版本
  14. 2016搜狗校招编程题
  15. 《网络攻防》Web安全基础实践
  16. 如何使用java解析json文件并将其写入数据库
  17. 机器学习:线性回归以及非线性回归
  18. 自动化测试===【转】Robot Framework作者建议如何选择自动化测试框架
  19. Springboot启动报错[ main] o.s.boot.SpringApplication: Application run failed(佷有可能是版本问题)
  20. 7628刷breed_360 P2路由器怎么刷入不死breed固件教程

热门文章

  1. 模拟电路笔记(三)放大器
  2. android app 头像上传原理
  3. [VS2010]逸雨清风 校园网视频,网吧视频(光音网视)下载器 V0.26
  4. Python3 解决编码问题: UnicodeEncodeError: 'gbk' codec can't encode character '\xa9' in position
  5. [windows优化]win10折腾过程
  6. 彩虹物语服务器维护,红手指彩虹物语云手机使用教程_红手指彩虹物语云挂机教程_彩虹物语息屏挂机教程_红手指云手机官网...
  7. hgoi#20190821
  8. 【Java-语言入门】开发 迷你图书管理器
  9. python数据分析入门【二】 --- 数据处理
  10. c语言坐标画折线,如何用C语言画折线图