
pat乙级真题---我的部分解答
Gk_zheng
这个作者很懒,什么都没留下…
展开
-
pat乙级真题--题号1009(说反话)
#include #include void danci(char * str,int n){ int i; char temp[88]; for (i = 0; str[i] != ' ' && str[i] != '\0';i++) temp[i] = str[i]; temp[i] = '\0'; if (str[i] == ' ') danci(原创 2017-11-13 16:45:08 · 323 阅读 · 0 评论 -
pat乙级真题 1033. 旧键盘打字(20)
题目链接 点击打开链接注意事项: 1 注意使用gets(),输入字符串。scanf无法输入空串,导致一个测试点不能过。 2 数组要大于100000代码 #include #include #i原创 2017-11-27 22:08:05 · 224 阅读 · 0 评论 -
pat乙级真题--1019. 数字黑洞
题目链接 点击打开链接#include #include #include int my_pow(int n){ int i,sum; if (n == 0) return 1; else{ for (i = 0, sum = 1; i < n; i++) sum原创 2017-11-17 12:06:02 · 282 阅读 · 0 评论 -
pat乙级真题:1027. 打印沙漏(20)
题目链接 点击打开链接题目思路 由于输入为不大于1000的整数,于是构建一个hourglass[50][99]存储一个沙漏的上半部分。0代表空格,1代表输入的特殊符号。然后计算出需要输出的层数, 再把数组中的对应部分输出即可。注意事项 1 每行只能输出符号前的空格,否则会报格式错误 2原创 2017-11-21 20:52:47 · 531 阅读 · 1 评论 -
pat乙级真题:1024. 科学计数法 (20)
题目连接 点击打开链接解题思路 把输入的科学计数法字符串拆分为指数部分和数字部分,并把指数部分的字符串转化为数字num。对指数部分为正和为负时分别处理。为负时,小数点前移,输出0.后继续输出num-1个0,之后把zhengshu字符串的非.部分全部输出即可。若指数部分为正时,分两种情况处理。一种是数字没有小数部分了,那就只需原创 2017-11-20 01:03:17 · 294 阅读 · 0 评论 -
pat 乙级 1075. 链表元素分类(25)
题目链接 点击打开链接代码#include #include #include int main(){ int end[100010][2], input[100010][2] , first, end_first, pri, N,K,count, temp_num; char原创 2017-12-05 22:04:50 · 277 阅读 · 0 评论 -
pat乙级真题 1074. 宇宙无敌加法器(20)
题目链接 点击打开链接注意事项1 一定要注意PAT之和为0的情况,最后一个测试点。 2 PAT之和所对应的数字除了结果为0外,不能以0开头。 3 记得把PAT数制中的0转换为十进制代码#include #include #include char PAT[30], //存储PAT数制 num1[30], num2[3原创 2017-12-03 00:36:46 · 505 阅读 · 0 评论 -
pat乙级真题 1070. 结绳(25)
题目链接 点击打开链接思路由于没结一次,就要缩短一半,因此越长的结的越少,那最后总长度肯定最长。于是把输入递增排序,然后逐个结绳就行了。代码#include #include void quick_sort(int a[],int start,int end){ int i,j,temp; i = start;原创 2017-12-02 22:11:27 · 229 阅读 · 0 评论 -
pat乙级真题 1068. 万绿丛中一点红(20)
题目链接 点击打开链接注意事项这道题目逻辑上不难,但坑很多。1 特殊数所对应的数字只能出现一次。2输出特殊数注意列在前,行在后。3 寻找一个数的周围八个数字时,要注意不能溢出。代码#include #include int flag[2<<24] ={0}, //标志每个数字出现的次数 _a[1000][1000];原创 2017-12-02 01:23:28 · 391 阅读 · 0 评论 -
pat乙级真题 1072. 开学寄语(20)
题目链接 点击打开链接思路简介把违禁品存储在数组中,然后每行逐个处理。先把以空格隔开的每行输入中各部分解析出来,再逐个判断该学生所携带的物品是否是违禁品。注意事项要注意学生携带物品数为0的情况,否则第二组测试用例过不了代码#include #include #include int stu_fobi原创 2017-12-01 17:15:50 · 421 阅读 · 0 评论 -
pat乙级真题 1012. 数字分类 (20)
题目链接 点击打开链接思路简介 每类数字设计一个函数,根据函数返回值来判断该类数字有没有,以及存在时数字是多少。代码 #include #include int A1(int a[], int num){ int i = 0, temp = 0; while (i < num){ if (a[i] % 5 == 0原创 2017-11-22 12:15:23 · 214 阅读 · 0 评论 -
pat乙级真题 1050. 螺旋矩阵(25)
题目链接 点击打开链接注意事项1 不能设置二维数组来存储矩形,要用一维数组来存储。 2 把每层赋值到矩阵时,要注意该行或该列是否还需要赋值。如7*1的矩阵,赋值了右边列时,左边列就不能赋值了,因为只有一列。 代码#include #include #include #include void quic原创 2017-11-29 17:22:16 · 195 阅读 · 0 评论 -
c语言:找出N以内的所有素数
方法一: 方法思想概论: 我们已知2是最小素数,于是从2开始筛选(定义筛选的基数为n,此时n = 2)。那么所有的2的倍数都不是素数, 因为至少可以被2整除。之后对3、4、5、6.....进行筛选(此时n = 3、4、5、6、7.....)。 #include <stdio.h>#include <stdio.h>#define...原创 2017-11-13 16:32:46 · 19563 阅读 · 0 评论 -
patd乙级真题 1065. 单身狗(25)
题目链接 点击打开链接思路定义couple数组,couple[i] == j,若j == 100001代表i没对象,否则i的对象为j。定义people数组,people[i] == j,若j == 0,则i没来聚会,若j == 1,则i来了。代码#include #include #include #include int mai原创 2017-11-29 02:57:05 · 384 阅读 · 0 评论 -
pat乙级 1067. 试密码(20)
题目链接 点击打开链接注意事项1 只说了密码不超过20个字符,用户输入不一定只有20个字符,否则最后一组测试用例过不了。2 用户输入的密码可能包含空格等空白字符,所以用户输入密码时需要用gets,而不能是scanf。代码#include #include #include int main(){ c原创 2017-11-29 01:45:46 · 240 阅读 · 0 评论 -
PAT乙级真题 1040. 有几个PAT(25)
题目链接 点击打开链接解题思路 若用三层循环的方式,会超时。 其实我们只需要找到每一个A,然后计算出这个A前面有多少个P,后面有多少个T,然后把这个两个数字相乘。最后把 每一个A对应的PAT数目相加就得到了全部的pat数目。代码#include #include #includ原创 2017-11-27 22:42:45 · 274 阅读 · 0 评论