PTA习题解
繁华落尽丏苍穹
入门级菜鸟,码龄不到两个月,不知道为什么头像显示码龄三年
展开
-
实验6-7 使用函数输出一个整数的逆序数 (20分)(数组解法和不用数组的解法)
实验6-7 使用函数输出一个整数的逆序数 (20分)本题要求实现一个求整数的逆序数的简单函数。函数接口定义:int reverse( int number );其中函数reverse须返回用户传入的整型number的逆序数。裁判测试程序样例:#include <stdio.h>int reverse( int number );int main(){int n;scanf("%d", &n);printf("%d\n", reverse(n));return原创 2020-12-17 17:01:03 · 631 阅读 · 0 评论 -
习题9-5 通讯录排序 (20分)(三维数组||自定义函数两种解法)
习题9-5 通讯录排序 (20分)输入n个朋友的信息,包括姓名、生日、电话号码,本题要求编写程序,按照年龄从大到小的顺序依次输出通讯录。题目保证所有人的生日均不相同。输入格式:输入第一行给出正整数n(<10)。随后n行,每行按照“姓名 生日 电话号码”的格式给出一位朋友的信息,其中“姓名”是长度不超过10的英文字母组成的字符串,“生日”是yyyymmdd格式的日期,“电话号码”是不超过17位的数字及+、-组成的字符串。输出格式:按照年龄从大到小输出朋友的信息,格式同输出。输入样例:3z原创 2020-12-07 09:32:59 · 767 阅读 · 0 评论 -
习题9-4 查找书籍 (20分)(gets字符串数组+scanf浮点数组)
习题9-4 查找书籍 (20分)给定n本书的名称和定价,本题要求编写程序,查找并输出其中定价最高和最低的书的名称和定价。输入格式:输入第一行给出正整数n(<10),随后给出n本书的信息。每本书在一行中给出书名,即长度不超过30的字符串,随后一行中给出正实数价格。题目保证没有同样价格的书。输出格式:在一行中按照“价格, 书名”的格式先后输出价格最高和最低的书。价格保留2位小数。输入样例:3Programming in C21.5Programming in VB18.5Progr原创 2020-12-04 16:54:52 · 214 阅读 · 0 评论 -
习题7-8 字符串转换成十进制整数 (15分)(字符串转长整型,头文件strlib.h)
习题7-8 字符串转换成十进制整数 (15分)输入一个以#结束的字符串,本题要求滤去所有的非十六进制字符(不分大小写),组成一个新的表示十六进制数字的字符串,然后将其转换为十进制数后输出。如果在第一个十六进制字符之前存在字符“-”,则代表该数是负数。输入格式:输入在一行中给出一个以#结束的非空字符串。输出格式:在一行中输出转换后的十进制数。题目保证输出在长整型范围内。输入样例:±P-xf4±1!#输出样例:-3905思路:题目的要求是先把十六进制的字符串提取出来,然后再以10进制的形式来原创 2020-12-03 11:27:36 · 496 阅读 · 0 评论 -
习题7-7 字符串替换 (15分)(只设置一个变量的解法)
习题7-7 字符串替换 (15分)本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:原字母 对应字母A ZB YC XD W… …X CY BZ A输入格式:输入在一行中给出一个不超过80个字符、并以回车结束的字符串。输出格式:输出在一行中给出替换完成后的字符串。输入样例:Only the 11 CAPItaL LeTtERS are replaced.输出样例:Lnly the 11 XZKRtaO OeGtVIH are replaced.思路:把题原创 2020-12-02 16:53:40 · 450 阅读 · 0 评论 -
习题7-6 统计大写辅音字母 (15分)(使用ctype.h里的函数解题)
习题7-6 统计大写辅音字母 (15分)英文辅音字母是除A、E、I、O、U以外的字母。本题要求编写程序,统计给定字符串中大写辅音字母的个数。输入格式:输入在一行中给出一个不超过80个字符、并以回车结束的字符串。输出格式:输出在一行中给出字符串中大写辅音字母的个数。输入样例:HELLO World!输出样例:4思路:直接用<ctype.h>里的 isalpha()、isupper()进行判断计数就可以了;实现如下:#include <stdio.h>#incl原创 2020-12-02 15:43:17 · 156 阅读 · 0 评论 -
习题7-5 找鞍点 (20分)(函数调用解法:先找最大值后比较是否为最小值)
习题7-5 找鞍点 (20分)一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。本题要求编写程序,求一个给定的n阶方阵的鞍点。输入格式:输入第一行给出一个正整数n(1≤n≤6)。随后n行,每行给出n个整数,其间以空格分隔。输出格式:输出在一行中按照“行下标 列下标”(下标从0开始)的格式输出鞍点的位置。如果鞍点不存在,则输出“NONE”。题目保证给出的矩阵至多存在一个鞍点。输入样例1:41 7 4 14 8 3 61 6 1 20 7 8 9输出样例1:2 1原创 2020-12-02 12:02:32 · 256 阅读 · 0 评论 -
习题7-3 判断上三角矩阵 (15分)(这种题首当其冲的是解决数学问题)
习题7-3 判断上三角矩阵 (15分)上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。本题要求编写程序,判断一个给定的方阵是否上三角矩阵。输入格式:输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个整数,其间以空格分隔。输出格式:每个矩阵的判断结果占一行。如果输入的矩阵是上三角矩阵,输出“YES”,否则输出“NO”。输入样例:231 2 30 4 50 0原创 2020-11-30 17:18:18 · 405 阅读 · 0 评论 -
习题4-11 兔子繁衍问题 (15分)(搞了半天居然是Fibonacci数列,无言以对)
习题4-11 兔子繁衍问题 (15分)一对兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假如兔子都不死,请问第1个月出生的一对兔子,至少需要繁衍到第几个月时兔子总数才可以达到N对?输入格式:输入在一行中给出一个不超过10000的正整数N。输出格式:在一行中输出兔子总数达到N最少需要的月数。思路:既然是斐波那契数列,思路真的没什么好说的了,实现基本上有 循环和递归两种,本列为循环实现:#include <stdio.h>int main(){原创 2020-11-30 16:22:36 · 169 阅读 · 0 评论 -
练习7-4 找出不是两个数组共有的元素 (20分)(数组解法)
练习7-4 找出不是两个数组共有的元素 (20分)给定两个整型数组,本题要求找出不是两者共有的元素。输入格式:输入分别在两行中给出两个整型数组,每行先给出正整数N(≤20),随后是N个整数,其间以空格分隔。输出格式:在一行中按照数字给出的顺序输出不是两数组共有的元素,数字间以空格分隔,但行末不得有多余的空格。题目保证至少存在一个这样的数字。同一数字不重复输出。输入样例:10 3 -5 2 8 0 3 5 -15 9 10011 6 4 8 2 6 -5 9 0 100 8 1输出样例:3原创 2020-11-30 16:01:49 · 1482 阅读 · 0 评论 -
习题7-2 求一批整数中出现最多的个位数字 (20分)(简单的字符串解法)
习题7-2 求一批整数中出现最多的个位数字 (20分)给定一批整数,分析每个整数的每一位数字,求出现次数最多的个位数字。例如给定3个整数1234、2345、3456,其中出现最多次数的数字是3和4,均出现了3次。输入格式:输入在第1行中给出正整数N(≤1000),在第二行中给出N个不超过整型范围的非负整数,数字间以空格分隔。输出格式:在一行中按格式“M: n1 n2 …”输出,其中M是最大次数,n1、n2、……为出现次数最多的个位数字,按从小到大的顺序排列。数字间以空格分隔,但末尾不得有多余空格。原创 2020-11-30 15:45:31 · 256 阅读 · 0 评论 -
PTA-习题6-7 简单计算器 (20分)(思路以及具体实现)
习题6-7 简单计算器 (20分)模拟简单运算器的工作。假设计算器只能进行加减乘除运算,运算数和结果都是整数,四种运算符的优先级相同,按从左到右的顺序计算。输入格式:输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数。遇等号”=”说明输入结束。输出格式:在一行中输出算式的运算结果,或者如果除法分母为0或有非法运算符,则输出错误信息“ERROR”。输入样例:1+210-10/2=输出样例:10***思路:这题想了很久,一开始觉得应该用 getchar()随读随解,后来觉得用a原创 2020-11-26 11:02:02 · 1070 阅读 · 0 评论