浙大PTA基础编程题目集(编程题)

文章目录

  • 7.1 厘米换算英尺英寸
  • 7.2 然后是几点
  • 7.3 逆序的三位数
  • 7-4 BCD解密
  • 7.5 表格输出
  • 7.6 混合类型数据格式化输入
  • 7.7 12-24小时制
  • 7-8 超速判断
  • 7.9 用天平找小球
  • 7.10 计算工资
  • 7.11 分段计算居民水费
  • 7.12 两个数的简单计算器
  • 7.13 日K蜡烛图
  • 7.14 求整数段和
  • 7.15 计算圆周率
  • 7-16 求符合给定条件的整数集
  • 7.17 爬动的蠕虫
  • 7.18 二分法求多项式单根
  • 7.19 支票面额
  • 7.20 打印九九口诀表
  • 7.21 求特殊方程的正整数解
  • 7.22 龟兔赛跑
  • 7.23 币值转换
  • 7.24 约分最简分式
  • 7.25 念数字
  • 7.26 单词长度
  • 7.27 冒泡法排序
  • 7.28 猴子选大王
  • 7.29 删除字符串中的子串
  • 7.30 字符串的冒泡排序
  • 7.31 字符串循环左移
  • 7.32 说反话-加强版
  • 7.33 有理数加法
  • 7.34 通讯录的录入与显示
  • 7.35 有理数均值
  • 7.36 四则运算
  • 7.37 整数分解为若干项之和
  • 7.38 数列求和-加强版

7.1 厘米换算英尺英寸

如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢忘了1英尺等于12英寸。

输入格式:
输入在一行中给出1个正整数,单位是厘米。

输出格式:
在一行中输出这个厘米数对应英制长度的英尺和英寸的整数值,中间用空格分开。

输入样例:170
输出样例:
5 6

题目不难,唯一算是难点的地方在于:解答者容易陷入题目所给公式的误区里,总想着把公式倒过来便能解决。
正确的解题思路是:
让输入的厘米除以30.48,便是带小数的英尺,直接取整便是所得英尺。
将小数部分乘以12并取整,便为英寸

(foot+inch/12)×0.3048 单位米
(foot+inch/12)×0.3048×100 单位㎝

7.2 然后是几点

有时候人们用四位数字表示一个时间,比如 1106 表示 11 点零 6 分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。
读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,例如 5 点 30 分表示为 530;0 点 30 分表示为 030。注意,第二个数字表示的分钟数可能超过 60,也可能是负数

输入格式:
输入在一行中给出 2 个整数,分别是四位数字表示的起始时间、以及流逝的分钟数,其间以空格分隔。注意:在起始时间中,当小时为个位数时,没有前导的零,即 5 点 30 分表示为 530;0 点 30 分表示为 030。流逝的分钟数可能超过 60,也可能是负数。

输出格式:
输出四位数字表示的终止时间,当小时为个位数时,没有前导的零。题目保证起始时间和终止时间在同一天内。

输入样例:
1120 110

输出样例:
1310

7.3 逆序的三位数

程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。

输入格式:
每个测试是一个3位的正整数.

输出格式:
输出按位逆序的数。

输入样例:
123

输出样例:
321

7-4 BCD解密

BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被输出成了十进制的18了!
现在,你的程序要读入这个错误的十进制数,然后输出正确的十进制数。提示:你可以把18转换回0x12,然后再转换回12。
输入格式:
输入在一行中给出一个[0, 153]范围内的正整数,保证能转换回有效的BCD数,也就是说这个整数转换成十六进制时不会出现A-F的数字。
输出格式:
输出对应的十进制数。
输入样例:
18
输出样例:
12

没有一点技术含量,就是格式控制

7.6 混合类型数据格式化输入

7.7 12-24小时制

浙大PTA基础编程题目集(编程题)

注意刚好12点的情况,还有就是处理好输入的 :

调试输入测试样例的时候记得切换为英文模式,不然会出现蜜汁错误

//------------------------C++版-------------------------#include#includeusing namespace std;int main(){	int hour,minute;	char colon;	cin>>hour>>colon>>minute;	if(hour12)//如果是上午,则不用转化时间,直接按格式输出即可	{		cout

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年10月26日
下一篇 2020年10月26日

相关推荐