PAT
LMY_go
这个作者很懒,什么都没留下…
展开
-
结构-02. 有理数加法(15)
本题要求编写程序,计算两个有理数的和。输入格式:输入在一行中按照“a1/b1 a2/b2”的格式给出两个分数形式的有理数,其中分子和分母全是整形范围内的正整数。输出格式:在一行中按照“a/b”的格式输出两个有理数的和。注意必须是该有理数的最简分数形式,若分母为1,则只输出分子。输入样例1:1/3 1/6输出样例1:1/2输入样例2:4/3原创 2014-12-01 00:12:08 · 884 阅读 · 0 评论 -
循环-13. 求特殊方程的正整数解(15)
本题要求对任意给定的正整数N,求方程X2+Y2=N的全部正整数解。输入格式:输入在一行中给出正整数N(输出格式:输出方程X2+Y2=N的全部正整数解,其中X输入样例1:884输出样例1:10 2820 22输入样例2:11输出样例2:No Solution#include#includeint main(void)原创 2014-11-30 23:28:38 · 617 阅读 · 0 评论 -
循环-07. 爬动的蠕虫(15)
一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。输入格式:输入在一行中顺序给原创 2014-11-30 23:18:50 · 849 阅读 · 0 评论 -
循环-06. 统计一行文本的单词个数(15)
本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。输入格式:输入给出一行字符。输出格式:在一行中输出单词个数。输入样例:Let's go to room 209.输出样例:5#include#includeint main(void){ char ch; int原创 2014-11-30 23:16:30 · 684 阅读 · 0 评论 -
循环-05. 兔子繁衍问题(15)
一对兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假如兔子都不死,请问第1个月出生的一对兔子,至少需要繁衍到第几个月时兔子总数才可以达到N对?输入格式:输入在一行中给出一个不超过10000的正整数N。输出格式:在一行中输出兔子总数达到N最少需要的月数。输入样例:30输出样例:9#includeint m原创 2014-11-30 23:15:51 · 793 阅读 · 0 评论 -
循环-03. 求符合给定条件的整数集(15)
给定不超过6的正整数A,考虑从A开始的连续4个数字。请输出所有由它们组成的无重复数字的3位数。输入格式:输入在一行中给出A。输出格式:输出满足条件的的3位数,要求从小到大,每行6个整数。整数间以空格分隔,但行末不能有多余空格。输入样例:2输出样例:234 235 243 245 253 254324 325 342 345 352 354423原创 2014-11-30 23:10:51 · 421 阅读 · 0 评论 -
循环-02. 计算圆周率(15)
根据下面关系式,求圆周率的值,直到最后一项的值小于给定阈值。输入格式:输入在一行中给出小于1的阈值。输出格式:在一行中输出满足阈值条件的近似圆周率,输出到小数点后6位。输入样例:0.01输出样例:3.132157#includeint main(void){ int i; double deno,num,temp,pi,a; s原创 2014-11-30 23:10:15 · 630 阅读 · 0 评论 -
循环-01. 求整数段和(15)
给定两个整数A和B,输出从A到B的所有整数以及这些数的和。输入格式:输入在一行中给出2个整数A和B,其中-100输出格式:首先顺序输出从A到B的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中输出全部数字的和。输入样例:-3 8输出样例: -3 -2 -1 0 1 2 3 4原创 2014-11-30 23:07:29 · 472 阅读 · 0 评论 -
分支-17. 统计学生成绩(15)
本题要求编写程序读入N个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则:大于等于90分为A;小于90且大于等于80为B;小于80且大于等于70为C;小于70且大于等于60为D;小于60为E。输入格式:输入在第1行中给出1个正整数N(输出格式:在一行中输出A、B、C、D、E对应的五分制成绩的人数分布,数原创 2014-11-30 22:49:30 · 2496 阅读 · 1 评论 -
数组-06. 找出不是两个数组共有的元素(20)
给定两个整型数组,本题要求找出不是两者共有的元素。输入格式:输入分别在2行中给出2个整型数组,每行先给出正整数N(输出格式:在一行中按照数字给出的顺序输出不是两数组共有的元素,数字间以空格分隔,但行末不得有多余的空格。题目保证至少存在一个这样的数字。同一数字不重复输出。输入样例:10 3 -5 2 8 0 3 5 -15 9 10011 6 4 8 2 6原创 2014-12-01 00:02:41 · 1743 阅读 · 0 评论 -
数组-02. 打印杨辉三角(20)
本题要求按照规定格式打印前N行杨辉三角。输入格式:输入在一行中给出N(1输出格式:以正三角形的格式输出前N行杨辉三角。每个数字占固定4位。输入样例:6输出样例: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 1原创 2014-11-30 23:59:03 · 1762 阅读 · 0 评论 -
数组-01. 字符转换(15)
本题要求提取一个字符串中的所有数字字符('0'……'9'),将其转换为一个整数输出。输入格式:输入在一行中给出一个不超过80个字符且以回车结束的字符串。输出格式:在一行中输出转换后的整数。题目保证输出不超过长整型范围。输入样例:free82jeep5输出样例:825#include#include#includeint main(voi原创 2014-11-30 23:57:58 · 1486 阅读 · 0 评论 -
循环-20. 猜数字游戏(15)
猜数字游戏是令系统随机产生一个100以内的正整数,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较,并提示大了(“Too big”),还是小了(“Too small”),相等表示猜到了。如果猜到,则结束程序。程序还要求统计猜的次数,如果1次猜出该数,提示“Bingo!”;如果3次以内猜到该数,则提示“Lucky You!”;如果超过3次但是在N(>3)次以内(包括第N次原创 2014-11-30 23:41:43 · 766 阅读 · 0 评论 -
循环-15. 统计素数并求和(20)
本题要求统计给定整数M和N区间内素数的个数并对它们求和。输入格式:输入在一行中给出2个正整数M和N(1输出格式:在一行中顺序输出M和N区间内素数的个数以及它们的和,数字间以空格分隔。输入样例:10 31输出样例:7 143#includeint main(void){ int m,n,i,sum,a; int f(int s); s原创 2014-11-30 23:32:35 · 833 阅读 · 0 评论 -
循环-10. 求序列前N项和(15)
本题要求编写程序,计算序列 2/1+3/2+5/3+8/5+... 的前N项之和。注意该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中输出部分和的值,精确到小数点后2位。题目保证计算结果不超过双精度范围。输入样例:20输出样例:32.66#includein原创 2014-11-30 23:23:51 · 604 阅读 · 0 评论 -
循环-09. 支票面额(15)
一个采购员去银行兑换一张y元f分的支票,结果出纳员错给了f元y分。采购员用去了n分之后才发觉有错,于是清点了余额尚有2y元2f分,问该支票面额是多少?输入格式:输入在一行中给出小于100的正整数n。输出格式:在一行中按格式“y.f”输出该支票的原始面额。如果无解,则输出“No Solution”。输入样例1:23输出样例1:25.51输入样例原创 2014-11-30 23:22:35 · 541 阅读 · 0 评论 -
循环-08. 二分法求多项式单根(20)
二分法求函数根的原理为:如果连续函数f(x)在区间[a, b]的两个端点取值异号,即f(a)f(b)二分法的步骤为:检查区间长度,如果小于给定阈值,则停止,输出区间中点(a+b)/2;否则如果f(a)f(b)如果f((a+b)/2)正好为0,则(a+b)/2就是要求的根;否则如果f((a+b)/2)与f(a)同号,则说明根在区间[(a+b)/2, b],令a=(原创 2014-11-30 23:21:26 · 468 阅读 · 0 评论 -
字符串-06. IP地址转换(20)
一个IP地址是用四个字节(每个字节8个位)的二进制码组成。请将32位二进制码表示的IP地址转换为十进制格式表示的IP地址输出。输入格式:输入在一行中给出32位二进制字符串。输出格式:在一行中输出十进制格式的IP地址,其由4个十进制数组成(分别对应4个8位的二进制数),中间用“.”分隔开。输入样例:1100110010010100000101010111001原创 2014-11-30 23:06:00 · 679 阅读 · 0 评论 -
循环-16. 猴子吃桃问题(15)
一只猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半加一个。到第N天早上想再吃时,见只剩下一个桃子了。问:第一天共摘了多少个桃子?输入格式:输入在一行中给出正整数N(1输出格式:在一行中输出第一天共摘了多少个桃子。输入样例:3输出样例:10#in原创 2014-11-30 23:35:40 · 561 阅读 · 0 评论 -
循环-17. 简单计算器(20)
模拟简单运算器的工作。假设计算器只能进行加减乘除运算,运算数和结果都是整数,4种运算符的优先级相同,按从左到右的顺序计算。输入格式:输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数。遇等号”=”说明输入结束。输出格式:在一行中输出算式的运算结果,或者如果除法分母为0或有非法运算符,则输出错误信息“ERROR”。输入样例:1+2*10-10/2=原创 2014-11-30 23:37:18 · 1044 阅读 · 0 评论 -
循环-18. 龟兔赛跑(20)
乌龟与兔子进行赛跑,跑场是一个矩型跑道,跑道边可以随地进行休息。乌龟每分钟可以前进3米,兔子每分钟前进9米;兔子嫌乌龟跑得慢,觉得肯定能跑赢乌龟,于是,每跑10分钟回头看一下乌龟,若发现自己超过乌龟,就在路边休息,每次休息30分钟,否则继续跑10分钟;而乌龟非常努力,一直跑,不休息。假定乌龟与兔子在同一起点同一时刻开始起跑,请问T分钟后乌龟和兔子谁跑得快?输入格式:输入在一行中给出原创 2014-11-30 23:37:50 · 928 阅读 · 0 评论 -
数组-09. 求矩阵的局部极大值(15)
给定M行N列的整数矩阵A,如果A的非边界元素A[i][j]大于相邻的上下左右4个元素,那么就称元素A[i][j]是矩阵的局部极大值。本题要求给定矩阵的全部局部极大值及其所在的位置。输入格式:输入在第1行中给出矩阵A的行数M和列数N(3输出格式:每行按照“元素值 行号 列号”的格式输出一个局部极大值,其中行、列编号从1开始。要求按照行号递增输出;若同行有超过1个局部极原创 2014-12-01 00:06:22 · 663 阅读 · 0 评论 -
数组-08. 字符串转换成十进制整数(15)
输入一个以#结束的字符串,本题要求滤去所有的非十六进制字符(不分大小写),组成一个新的表示十六进制数字的字符串,然后将其转换为十进制数后输出。如果过滤后字符串的首字符为“-”,代表该数是负数。输入格式:输入在一行中给出一个以#结束的非空字符串。输出格式:在一行中输出转换后的十进制数。题目保证输出在长整型范围内。输入样例:+P-xf4+-1!#输出样例:原创 2014-12-01 00:05:09 · 830 阅读 · 0 评论 -
数组-07. 求一批整数中出现最多的个位数字(20)
给定一批整数,分析每个整数的每一位数字,求出现次数最多的个位数字。例如给定3个整数1234、2345、3456,其中出现最多次数的数字是3和4,均出现了3次。输入格式:输入在第1行中给出正整数N(输出格式:在一行中按格式“M: n1 n2 ...”输出,其中M是最大次数,n1、n2、……为出现次数最多的个位数字,按从小到大的顺序排列。数字间以空格分隔,但末尾不得有多原创 2014-12-01 00:03:33 · 969 阅读 · 0 评论 -
数组-04. 查找整数(10)
本题要求从输入的N个整数中查找给定的X。如果找到,输出X的位置(从0开始数);如果没有找到,输出“Not Found”。输入格式:输入在第1行中给出2个正整数N(输出格式:在一行中输出X的位置,或者“Not Found”。输入样例1:5 73 5 7 1 9输出样例1:2输入样例2:5 73 5 8 1 9输出样例2:Not原创 2014-12-01 00:00:50 · 841 阅读 · 1 评论 -
循环-19. 币值转换(20)
输入一个整数(位数不超过9位)代表一个人民币值(单位为元),请转换成财务要求的大写中文格式。如23108元,转换后变成“贰万叁仟壹百零捌”元。为了简化输出,用小写英文字母a-j顺序代表大写数字0-9,用S、B、Q、W、Y分别代表拾、百、仟、万、亿。于是23108元应被转换输出为“cWdQbBai”元。输入格式:输入在一行中给出一个不超过9位的非负整数。输出格式:在一原创 2014-11-30 23:40:29 · 3660 阅读 · 4 评论 -
循环-11. 水仙花数(20)
水仙花数是指一个N位正整数(N>=3),它的每个位上的数字的N次幂之和等于它本身。例 如:153 = 13 + 53+ 33。 本题要求编写程序,计算所有N位水仙花数。输入格式:输入在一行中给出一个正整数N(3输出格式:按递增顺序输出所有N位水仙花数,每个数字占一行。输入样例:3输出样例:153370371407#include#in原创 2014-11-30 23:25:13 · 657 阅读 · 0 评论 -
结构-06. 复数四则运算(15)
本题要求编写程序,计算2个复数的和、差、积、商。输入格式:输入在一行中按照“a1 b1 a2 b2”的格式给出2个复数C1=a1+b1*i和C2=a2+b2*i的实部和虚部。题目保证C2不为0。输出格式:分别在4行中按照“(a1+b1i) 运算符 (a2+b2i) = 结果”的格式顺序输出2个复数的和、差、积、商,数字精确到小数点后1位。如果结果的实部或者虚部为0,原创 2014-12-01 00:14:26 · 1250 阅读 · 0 评论 -
结构-01. 有理数比较(10)
本题要求编写程序,比较两个有理数的大小。输入格式:输入在一行中按照“a1/b1 a2/b2”的格式给出两个分数形式的有理数,其中分子和分母全是整形范围内的正整数。输出格式:在一行中按照“a1/b1 关系符 a2/b2”的格式输出两个有理数的关系。其中“>”表示“大于”,“输入样例1:1/2 3/4输出样例1:1/2 < 3/4输入样例2:原创 2014-12-01 00:11:03 · 2104 阅读 · 0 评论 -
数组-14. 数字加密(15)
输入一个四位数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10取余,做为该位上的新数字,最后将千位和十位上的数字互换,百位和个位上的数字互换,组成加密后的新四位数。例如输入1257,经过加9取余后得到新数字0146,再经过两次换位后得到4601。输入格式:输入在一行中给出一个四位的整数x,即要求被加密的数。输出格式:在一行中按照格式“The encry原创 2014-12-01 00:10:46 · 916 阅读 · 0 评论 -
数组-12. 简易连连看(20)
本题要求实现一个简易连连看游戏模拟程序。给定一个2Nx2N的方阵网格游戏盘面,每个格子中放置一些符号。这些符号一定是成对出现的,同一个符号可能不止一对。程序读入玩家给出的一对位置(x1, y1)、(x2, y2),判断这两个位置上的符号是否匹配。如果匹配成功,则将两个符号消为“*”并输出消去后的盘面;否则输出“Uh-oh”。若匹配错误达到3次,则输出“Game Over”并结束游戏。或者当原创 2014-12-01 00:09:44 · 1844 阅读 · 0 评论 -
数组-10. 求整数序列中出现次数最多的数(15)
本题要求统计一个整型序列中出现次数最多的整数及其出现次数。输入格式:输入在一行中给出序列中整数个数N(0输出格式:在一行中输出出现次数最多的整数及其出现次数,数字间以空格分隔。题目保证这样的数字是唯一的。输入样例:10 3 2 -1 5 3 4 3 0 3 2输出样例:3 4#includeint main(void){ int a[1原创 2014-12-01 00:07:19 · 20930 阅读 · 1 评论 -
数组-03. 冒泡法排序(20)
将N个整数按从小到大排序的冒泡排序法是这样工作的:从头到尾比较相邻两个元素,如果前面的元素大于其紧随的后面元素,则交换它们。通过一遍扫描,则最后一个元素必定是最大的元素。然后用同样的方法对前N-1个元素进行第二遍扫描。依此类推,最后只需处理两个元素,就完成了对N个数的排序。本题要求对任意给定的K(输入格式:输入在第1行中给出N和K(1输出格式:在一行中输出冒原创 2014-11-30 23:59:58 · 1178 阅读 · 0 评论 -
循环-27. 求给定序列前N项和之五(15)
本题要求编写程序,计算序列 1 + 1/2 + 1/3 + ... 的前N项之和。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后6位。题目保证计算结果不超过双精度范围。输入样例:6输出样例:sum = 2.450000#includeint main(void){原创 2014-11-30 23:53:59 · 1283 阅读 · 0 评论 -
循环-26. 求给定序列前N项和之四(15)
本题要求编写程序,计算序列 1 - 1/4 + 1/7 - 1/10 + ... 的前N项之和。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后3位。题目保证计算结果不超过双精度范围。输入样例:10输出样例:sum = 0.819#include#includeint原创 2014-11-30 23:52:17 · 662 阅读 · 0 评论 -
循环-23. 找完数(20)
所谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、3为6的因子。本题要求编写程序,找出任意两正整数m和n之间的所有完数。输入格式:输入在一行中给出2个正整数m和n(0输出格式:逐行输出给定范围内每个完数的因子累加形式的分解式,每个完数占一行,格式为“完数 = 因子1 + 因子2 + ... + 因子k”,其中完数和因子均按递增顺序给出。原创 2014-11-30 23:49:14 · 838 阅读 · 0 评论 -
循环-22. 输出闰年(15)
输出21世纪中截止某个年份以来的所有闰年年份。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。输入格式:输入在一行中给出21世纪的某个截止年份。输出格式:逐行输出满足条件的所有闰年年份,即每个年份占一行。输入若非21世纪的年份则输出"Invalid year!"。输入样例 1:2048输出样例 1:20042008201220原创 2014-11-30 23:48:22 · 1497 阅读 · 0 评论 -
循环-21. 求交错序列前N项和(15)
本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中输出部分和的值,结果保留3位小数。输入样例:5输出样例:0.917#include#includeint main(void){ int deno=1,fl=1,i,n; do原创 2014-11-30 23:44:33 · 5695 阅读 · 0 评论 -
字符串-04. 字符串逆序(15)
输入一个字符串,对该字符串进行逆序,输出逆序后的字符串。输入格式:输入在一行中给出一个不超过80个字符长度的、以回车结束的非空字符串。输出格式:在一行中输出逆序后的字符串。输入样例:Hello World!输出样例:!dlroW olleH#include#includeint main(void){ char s[80]; int原创 2014-11-30 23:02:41 · 541 阅读 · 0 评论 -
分支-18. 求一元二次方程的根(20)
本题目要求一元二次方程 a*x2+b*x+c=0 的根,结果保留2位小数。输入格式:输入在一行中给出3个浮点系数a, b, c,中间用空格分开。输出格式:根据系数情况,输出不同结果:1)如果方程有两个不相等的实数根,则每行输出一个根,先大后小;2)如果方程有两个不相等复数根,则每行按照格式“实部+虚部i”输出一个根,先输出虚部为正的,后输出虚部为负的;3)如原创 2014-11-30 22:52:11 · 748 阅读 · 0 评论