PAT
thistle2012
这个作者很懒,什么都没留下…
展开
-
Maximum Subsequence Sum
Given a sequence of K integers { N1, N2, ..., NK }. A continuous subsequence is defined to be { Ni, Ni+1, ..., Nj } where 1 Maximum Subsequence is the continuous subsequence which has the largest su转载 2015-01-28 22:41:58 · 531 阅读 · 0 评论 -
将数据按照奇偶排序
输入10个数,将10个整数按升序排列输出,并且奇数在前,偶数在后。如果输入的10个数是:10 9 8 7 6 5 4 3 2 1 ,则输出:1 3 5 7 8 2 4 6 8 10。(编程提示:可利用2个数组变量,一个用来存放输入的整数,输入后,对这个数组进行排序,然后将数据复制到另一个数组中,先复制奇数再复制偶数)。 程序运行结果如下:Input 10 numbers:3原创 2015-02-13 20:37:18 · 2779 阅读 · 0 评论 -
模拟骰子
模拟骰子的6000次投掷,编程统计并输出骰子的6个面各自出现的概率。#include#include #include int main(){ int face, roll, frequency[7] = {0}; srand(time (NULL)); for (roll=1; roll<=6000; roll++) {转载 2015-02-13 22:25:48 · 3974 阅读 · 0 评论 -
完全数
完全数,又称完美数或完数(Perfect Number),它是指这样的一些特殊的自然数,它所有的真因子(即除了自身以外的约数)的和,恰好等于它本身。例如,6就是一个完全数,是因为6 = 1 + 2 + 3。请编写一个判断完全数的函数IsPerfect(),然后判断从键盘输入的整数是否是完全数。注意:1没有真因子,所以不是完全数。#include #include int IsPer转载 2015-02-13 21:36:48 · 4037 阅读 · 0 评论 -
编程计算x的每一位数字相加之和
从键盘任意输入一个4位数x,编程计算x的每一位数字相加之和(忽略整数前的正负号)。例如,输入x为1234,则由1234分离出其千位1、百位2、十位3、个位4,然后计算1+2+3+4=10,并输出10。程序的运行结果如下:Input data is:-4213↙The sum of the total bit is 10#include #include in转载 2015-02-13 21:52:21 · 10357 阅读 · 1 评论 -
三色球分组
从3个红球,5个白球,6个黑球中任意取出8个作为一组进行输出。在每组中可以没有黑球,但必须要有红球和白球。编程实现以上功能。用函数返回其组合数,在函数中打印每组的组合函数原型为: int Fun (void);程序运行结果为:The result:red: 1 white: 1 black: 6red: 1 white: 2 black:原创 2015-02-13 21:02:39 · 2443 阅读 · 0 评论 -
计算最大值和最小值
从键盘任意输入10个整数,用指针变量作函数参数编程计算最大值和最小值,并返回它们所在数组中的位置。例如,程序的一组运行结果如下:Input 10 numbers:-1 2 3 45 92 8 9 12 7 8↙Max=92,Position=4,Min=-1,Position=0#include int FindMax(int num[], i转载 2015-02-13 21:36:06 · 4316 阅读 · 0 评论 -
兔子生崽问题
假设一对小兔的成熟期是一个月,即一个月可长成成兔,那么如果每对成兔每个月都可以生一对小兔,一对新生的小兔从第二个月起就开始生兔子,试问从一对兔子开始繁殖,一年以后可有多少对兔子?请编程求解该问题。参考答案:依题意,兔子的繁殖情况如图所示。图中实线表示成兔仍是成兔或者小兔长成成兔;虚线表示成兔生小兔。观察分析此图可发现如下规律:(1)每月小兔对数 = 上个月成兔对数。(2原创 2015-01-31 11:27:36 · 5871 阅读 · 0 评论 -
二分法求根
用二分法求下面的一元三次方程在区间[-10, 10]上误差不大于的根。用二分法求方程的根的基本原理是:若函数有实根,则函数曲线应当在根x*这一点上与x轴有一个交点,并且由于函数是单调的,在根附近的左右区间内,函数值的符号应当相反。利用这一特点,可以通过不断将求根区间二分的方法,每次将求根区间缩小为原来的一半,在新的折半后的区间内继续搜索方程的根,对根所在区间继续二分,直到求原创 2015-01-31 17:02:37 · 16900 阅读 · 0 评论 -
摘苹果
陶陶家的院子里有一棵苹果树,每到秋天树上就会结出10个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个30厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。现在已知10个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请帮陶陶算一下她能够摘到的苹果的数目。假设她碰到苹果,苹果就会掉下来。输入格式:输入包括两行数据。原创 2015-01-31 15:49:38 · 1554 阅读 · 0 评论 -
检验并打印幻方矩阵
幻方矩阵是指该矩阵中每一行、每一列、每一对角线上的元素之和都是相等的。从键盘输入一个5×5的矩阵并将其存入一个二维整型数组中,检验其是否为幻方矩阵,并将其按指定格式显示到屏幕上。输入格式:"%d"输出格式:如果是幻方矩阵,屏幕输出——"It is a magic square!\n"矩阵元素的输出: "%4d"(换行使原创 2015-01-31 14:56:53 · 4849 阅读 · 0 评论 -
矩阵转置
根据输入的n保存一个特定的方阵,要求a[i][j] = i * n + j + 1(a[i][j]表示第i行第j列),然后输出这个矩阵和它的转置矩阵。#include const int MAX=10;int main(){ int Matrix[MAX][MAX]; int ChangedMatrix[MAX][MAX]; int n; scanf_s("%d", &n);原创 2015-01-31 16:08:26 · 1046 阅读 · 0 评论 -
计算礼炮声响次数
在海军节开幕式上,有A、B、C三艘军舰要同时开始鸣放礼炮各21响。已知A舰每隔5秒放1次,B舰每隔6秒放1次,C舰每隔7秒放1次。假设各炮手对时间的掌握非常准确,请编程计算观众总共可以听到几次礼炮声。#include int main(){ int a = 0, b = 0, c = 0, count = 0; while (a <= 5 * 20 || b <= 6 * 20 ||转载 2015-01-31 10:35:06 · 5450 阅读 · 1 评论 -
三天打渔两天晒网
某人三天打渔两天晒网,假设他从1990年1月1日开始打渔三天,然后晒网两天,请编程回答任意的一天他在打渔还是晒网。输入格式:"%4d-%2d-%2d"输出格式:"Invalid input" 或"He is having a rest" 或"He is working"输入样例1:201原创 2015-01-31 11:59:32 · 2095 阅读 · 1 评论 -
ISBN识别码判断
每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”就是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符“-”之后的三位数字代表出版社,例如670代表维京出版社;第二个分隔符后的原创 2015-01-31 15:21:51 · 4989 阅读 · 0 评论 -
抓交通肇事犯
一辆卡车违犯交通规则,撞人后逃跑。现场有三人目击事件,但都没记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同;丙是位数学家,他说:四位的车号刚好是一个整数的平方。现在请根据以上线索帮助警方找出车号以便尽快破案。[提示]:假设这个4位数的前两位数字都是i,后两位数字都是j,则这个可能的4位数k = 1000*i + 100*i转载 2015-01-31 11:38:27 · 2149 阅读 · 0 评论 -
最大子列和问题
给定K个整数组成的序列{ N1, N2, ..., NK },“连续子列”被定义为{ Ni, Ni+1, ..., Nj },其中 1 输入格式:输入第1行给出正整数 K (输出格式:在一行中输出最大子列和。如果序列中所有整数皆为负数,则输出0。输入样例:6-2 11 -4 13 -5 -2输出样例:20#include #incl转载 2015-01-28 22:39:22 · 497 阅读 · 0 评论 -
求出最大数和最小数的最大公约数
求出最大数和最小数的最大公约数程序运行结果如下:Input 10 numbers:15 23 56 87 94 105 78 19 22 43↙maxNum=105minNum=1515#include #include #define N 10int Gcd(int a, int b){ int tmp, c; if (a<b) {转载 2015-02-13 21:25:33 · 2450 阅读 · 0 评论