2017级新生周赛(一)题解

本次周赛只考察循环和循环以前的知识。有的地方会用到数组,不过也可以不用数组解决。所有题目的参考代码都只有链接,因为新浪博客上放代码,代码排版会乱,不利于大家看代码。 第一题:方法一:考察对字符数据的理解。代码:代码链接:http://paste.ubuntu.com/25793410/方法二:转义字符。代码:代码链接:http://paste.ubuntu.com/25793395/第二题:简单的循环,判断问题。定义两个整形变量,num1 (重修科目), num2(补考科目)。一个浮点型变量,补考、重修学分的总数 total。先将 3 个变量初始为零。每当小明的一科成绩小于 30, num1++;每当小明的一科成绩大于等于30 ,小于 60 num2++;在统计 num1,num2, 同时记录 total(注意 total 为浮点型, 保留一位小数)。代码:代码链接:http://paste.ubuntu.com/25793418/第三题:先判断下是否可以构成三角形,三角形都无法构成,钝角三角形肯定也无法构成。两边之和小于第三边即不能构成三角形。再用余弦定理,判断是否有钝角,cosA=(b2+c2-a2)/&nbsp;2bc。因为b、c一定为正,&nbsp;所以(b2+c2-a2)< 0 即 角 A 为钝角。不过要记得判断三个角,任意一个角为负,就是钝角三角形。代码:代码链接:http://paste.ubuntu.com/25793434/ 第四题:定义 11 个整形变量,分别代表 -5 到 5 11 个数字。初始整形变量都为 0 。n 个数中,每找到一个数,就让对应的整形变量加一。整形变量的数值就是该变量所代表数字出现的次数。代码一:代码链接:http://paste.ubuntu.com/25793456/ 代码二:代码链接:http://paste.ubuntu.com/25793486/ 第五题:先把大写全部转换成小写 或 先把小写转化成大写。然后根据题中所给的顺序(1~4),按顺序转化输出。代码:代码链接 :http://paste.ubuntu.com/25793498/ 第六题:定义最大值,次大值,最小值,次小值。先更新次大值,如果次大值大于最大值交换两个数的数值。先更新次小值,如果次小值小于最小值交换两个数的数值。如果会数组可以直接排序。代码:代码链接 :http://paste.ubuntu.com/25793521/如有错误或不当之处请指出 !!! 

posted @ 2022-10-22 18:37  河南工业大学算法协会  阅读(8)  评论(0编辑  收藏  举报