第一阶段上机考试补题报告
作者:互联网
R7-4 求某月的天数 (20 分)
输入年份year、月份month,判断该月的天数。闰年:能被4整除但不能被100整除或者能被400整除的年份是闰年。
输入格式:
测试数据有多组,处理到文件尾。对于每组测试,输入两个整数,表示年份year和月份month。
输出格式:
对于每组测试,输出对应年月的天数。
输入样例:
2020 2
2020 4
输出样例:
29
30
出错代码:
出错原因及反思:
整体思路及语法未出现问题,但是对于利用while语句循环读入数据的方法理解有偏差,导致代码输入有问题。
学习理解后代码如下:
R7-5 位运算应用 (20 分)
现有96个端口状态,用3个无符号整型ua(95~64),ub(63~32),uc(31~0)组合起来的96位二进制数来表示,每位二进制数的1、0表示其正常和故障状态。
输入一个tag位,将tag位上二进制数置1.
tag位表示其在96位中所处的位数(在96位中从低向高从0至95)
输入格式:
第一行输入三个无符号整数,表示ua,ub,uc
第二行输入一个整数tag。
输出格式:
若tag值不在0到95之间,则输出Error,否则输出转换后的ua,ub,uc
输入样例:
1 2 3
-2
结尾无空行
输出样例:
Error
结尾无空行
输入样例:
1 2 3
10
结尾无空行
输出样例:
ua=1,ub=2,uc=1027
结尾无空行
出错原因:
因个人原因对位运算有莫名的抗拒,畏难心理。所以题目都没有看完整就直接跳到下一题了,又因为各种原因导致没时间回来看这一题。
调整心态做题后代码如下:
反思:
不管是考试还是平时练习都应该调整好心态,不畏难,在深思熟虑之后再选择跳题。需要加强对位运算的熟练度。
7-6 打印沙漏 (20 分)
本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印
*****
***
*
***
*****
所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。
给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。
输入格式:
输入在一行给出1个正整数N(≤1000)和一个符号,中间以空格分隔。
输出格式:
首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。
输入样例:
19 *
结尾无空行
输出样例:
*****
***
*
***
*****
2
结尾无空行
出错代码:
出错原因:
做题思路不够清晰,无法确定循环条件,理不清题目所要求的内在逻辑。导致删了改改了删,最终时间不足。
更正后代码如下:
反思:
先想后做题,而不是做一步想一步,从而规避删了改改了删等降低效率的情况。在定义变量时可以在合法的前提下用诸如“hang”、“lie”、“yu”等帮助自己更好的理清思路和逻辑。
标签:空行,输出,沙漏,上机,符号,样例,补题,输入,第一阶段 来源: https://www.cnblogs.com/zzzhr/p/15438285.html