乙级题
qwjy
这个作者很懒,什么都没留下…
展开
-
PAT (Basic Level) Practice (中文) 1052 卖个萌
题目链接 思路: 首先要注意每一个表情并不一定是单个字符,存在多个字符的情况;将手、眼、口分别存储,以字符串形式存储;使用时在从其中取出表情符。 %[^字符]表示当输入遇到该字符时才停止。 代码:#include<stdio.h>#include<string.h>in...原创 2020-02-09 11:03:15 · 335 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1051 复数乘法
题目链接 思路:复数乘法:(a+b i)*(c+d i)=(ac-bd)+(bc+ad) iR(cosP+i sinP)ac-bd = R1 R2 cosP1 cosP2 - R1 R2 sinP1 sinP2= R1 R2 cos(P1 + P2)bc+ad = R1 R2 sinP1 cosP2 + R1 R2 cosP1 sinP2= R...原创 2020-02-09 10:19:32 · 298 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1050 螺旋矩阵
题目链接思路:题目挺简单的,只是要注意绝对值小于0.005的都归属为0;数据域为double。1052:首先要注意每一个表情并不一定是单个字符,存在多个字符的情况;将手、眼、口分别存储,以字符串形式存储。代码:#include<stdio.h>#include<math.h>#include<stdlib.h>int cmp(const void ...原创 2020-01-28 15:36:09 · 324 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1049 数列的片段和
题目链接思路:规律:每一个数会出现的次数=这个数在数组中的位置*数组中从这个数开始有多少数。1050:对数组排个序,然后一次存入二维数组之中。代码:#include<stdio.h>int main(){ int n,c,d; double a=0.0,b; scanf("%d",&n); d=n; for(c=1;c<=n;c++,d--...原创 2020-01-28 15:34:40 · 374 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1048 数字加密
题目链接思路:从后便利字符串数组,要加入一个奇偶数位的计算器,判断是奇数位还是偶数位;需要注意的是加密的数字长度与被加密的数字长度可能会不一致,如果被加密数长长的部分直接不变就可以,如果加密数长则将被加密数该位置的值视为0,即可。代码:#include<stdio.h>#include<string.h>int main(){ char A[101],B[...原创 2020-01-28 15:31:59 · 313 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1047 编程团体赛
题目链接思路:输入的形式是固定的:队伍编号-队员编号 成绩;可以使用规定的输入获取形式,获取归属哪一队,再将其得分加入该队,队伍的数量较小可以使用数组存储;最后再便利队伍数组找出分数最多的一队,输出。代码:#include<stdio.h>int main(){ int n,m[1001]={0},a,b,c,max=0; scanf("%d",&n); ...原创 2020-01-28 13:30:00 · 389 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1046 划拳
题目链接思路:每获取一次划拳数据就判断一次,谁喝酒,设置甲乙两个人的喝酒计算器(初始化为0),喝一次加一次,最后将这个两个数据输出。代码:#include<stdio.h>int main(){ int n,jh,jq,yh,yq,j=0,y=0; scanf("%d",&n); while(n--){ scanf("%d %d %d %d",&...原创 2020-01-28 13:20:12 · 319 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1045 快速排序 (25分)
题目链接代码:#include<stdio.h>#include<stdlib.h> int cmp(const void *a,const void *b){ return (*(int *)a-*(int *)b);}int main(){ int max=0,n,a1[100000],a2[100000],a3[10...原创 2020-01-17 20:24:18 · 328 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1044 火星数字
题目链接#include<stdio.h>#include<string.h>int main(){ char a1[13][10]={"tret","jan","feb","mar","apr","may","jun","jly","aug","sep","oct","nov","dec"}; char a2[13][10]={"",...原创 2019-12-01 21:09:12 · 380 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1043 输出PATest
题目链接#include<stdio.h>int main(){ char a; int P=0,A=0,T=0,e=0,s=0,t=0; scanf("%c",&a); while(a!='\n'){ if(a=='P') P++; if(a=='A') A++; if(a=='T') T++; if(a=='e') e++; ...原创 2019-11-30 18:35:59 · 323 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1042 字符统计
题目链接#include<stdio.h>#include<ctype.h>int main(){ char a[1001],g; int b[1001]={0},c,d,max; scanf("%c",&g); for(c=0;g!='\n';c++){ a[c]=g; scanf("%c",&a...原创 2019-11-16 14:15:07 · 366 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1041 考试座位号
题目链接#include<stdio.h>int main(){ int n,k,a[1000][2],b,c,d; char m[1000][15]; scanf("%d",&n); for(b=0;b<n;b++){ scanf("%s %d %d",m[b],&a[b][0],&a[b][1]);...原创 2019-10-28 22:23:42 · 296 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1040 有几个PAT
题目链接#include<stdio.h>int main(){ char a; long int p=0,pa=0,pat=0; scanf("%c",&a); while(a!='\n'){ if(a=='P') p++; if(a=='A') pa=pa+p; if(a=='T')...原创 2019-10-20 18:55:52 · 291 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1039 到底买不买
题目链接#include<stdio.h>#include<string.h>int main(){ char str1[1001],str2[1001]; int a1[123]={0},a2[123]={0},b1=0,b2=0,e,f,g=0; scanf("%s %s",str1,str2); for(e=0;st...原创 2019-10-18 12:02:25 · 301 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1038 统计同成绩学生
题目链接#include<stdio.h>int main(){ int n,a[101]={0},b,c,d,k,e[100000]; scanf("%d",&n); for(b=0;b<n;b++){ scanf("%d",&c); a[c]++; } scanf("%d",&k);...原创 2019-10-16 21:43:02 · 370 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1037 在霍格沃茨找零钱
题目链接#include<stdio.h>int main(){ long long int Galleon1,Galleon2,Sickle1,Sickle2,Knut1,Knut2,a1,a2,b,c,d; scanf("%lld.%lld.%lld",&Galleon1,&Sickle1,&Knut1); a1=Gal...原创 2019-10-13 18:14:11 · 370 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1003 我要通过!
题目链接#include<stdio.h>int qw(char a[]){ int b,c,d; for(c=0;a[c]!='\0';c++){ if(a[c]=='P') break; } for(d=0;a[d]!='\0';d++){ if(a[d]=='T') break; } if(a[d]...原创 2019-08-21 19:48:54 · 569 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1029 旧键盘 (20 分)
题目链接#include<stdio.h>int main(){ char a[81],b[81]; int c[1000]={0},d=0,e=0; scanf("%s %s",a,b); while(a[d]!='\0'&&b[e]!='\0'){ if(a[d]==b[e]){ d++; e++...原创 2019-09-23 17:41:29 · 350 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1030 完美数列
题目链接#include<stdio.h>int qw(long long int z[],long long int left,long long int right){//快速排序,也可以用qsort long long int temp,a,i,j; if(left>right) return 0; temp=z[left];...原创 2019-09-24 17:58:01 · 545 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1031 查验身份证
题目链接#include<stdio.h>int main(){ char a[20],c[]={'1','0','X','9','8','7','6','5','4','3','2'}; int b[]={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2},n,d,e=0,f=0,g=0; scanf("%d",&...原创 2019-09-26 22:19:43 · 384 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1032 挖掘机技术哪家强
题目链接#include<stdio.h>int main(){ int n,a[100001]={0},b,c,d,max=1; scanf("%d",&n); for(b=0;b<n;b++){ scanf("%d %d",&c,&d); a[c]=a[c]+d; } for(b=1;b<...原创 2019-09-27 22:31:59 · 398 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1033 旧键盘打字
题目链接#include<stdio.h>int main(){ char str1[100001],str2[100001]; int a[1000]={0},b,c,d,g=0; gets(str1); gets(str2); for(b=0;str1[b]!='\0';b++){ if(str1[b]=='+'){ ...原创 2019-09-28 22:38:16 · 353 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1034 有理数四则运算 (20 分)
题目链接#include<stdio.h>long int qy(long int a,long int b){ long int c; while((c=a%b)){ a=b; b=c; } return b;}void qw(long int a,long int b){ if(b==0){ printf("...原创 2019-10-03 21:10:07 · 381 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1035 插入与归并 (25 分)
题目链接#include<stdio.h>#include<stdlib.h>int cmp(const void *a,const void *b){ return *(int *)a-*(int *)b;}int main(){ int N; scanf("%d",&N); int r[2][N],a,b; ...原创 2019-10-07 21:51:58 · 351 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1036 跟奥巴马一起编程
题目链接#include<stdio.h>int main(){ int n,a,b; char m; scanf("%d%*c%c",&n,&m); for(a=0;a<n;a++) printf("%c",m); printf("\n"); for(a=2;a<(n+1)/2;a++){ pr...原创 2019-10-10 22:20:06 · 357 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1028 人口普查 (20 分)
题目链接#include<stdio.h>#include<string.h>int main(){ long int a=749090,n,b,c,d,e[100000],m,s=0; char f[100000][6],g[6]; scanf("%ld",&n); for(m=0;m<n;m++){ s...原创 2019-09-21 16:48:18 · 454 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1027 打印沙漏
题目链接#include<stdio.h>#include<math.h>int main(){ int n,a,b,c,d; char m; float s; scanf("%d%*c%c",&n,&m); s=(n+1)/2; s=sqrt(s); a=(int)s; for(b=0;b<...原创 2019-09-19 21:48:52 · 416 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1026 程序运行时间
题目链接#include<stdio.h>int main(){ long int a,b,c,d,e; scanf("%ld %ld",&a,&b); a=(b-a+50)/100; c=a%60; a=a/60; d=a%60; e=a/60; printf("%02d:%02d:%02d",e,d,c); ...原创 2019-09-18 22:04:54 · 364 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1012 数字分类
题目链接#include <math.h>#include <stdio.h>int main() { int n, b, a, c = 0,d=0; b = 1; scanf("%d", &n); int m[n]; float a1 = 0, a2 = 0, a3 = 0, a5 = 0; double a4 ...原创 2019-08-26 22:16:13 · 510 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1011 A+B 和 C
题目链接#include <stdio.h>int main() { int n; long int a, b, c, d; scanf("%d", &n); for (d = 1; d <= n; d++) { scanf("%ld %ld %ld", &a, &b, &c); if ((...原创 2019-08-26 22:14:57 · 502 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1006 换个格式输出整数
题目链接#include <stdio.h>int main(){ int a, b, c, n; scanf("%d", &n); a = n / 100; for(b=1;b<=a;b++) printf("B"); a = (n / 10) % 10; for(b=1;b<=a;b++) printf...原创 2019-08-21 19:57:34 · 568 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1005 继续(3n+1)猜想
题目链接#include<stdio.h>int main(){ int n,a,b,c[100],d[101]={0},e=0; scanf("%d",&n); for(a=0;a<n;a++){ scanf("%d",&c[a]); d[c[a]]=1; } for(a=0;a<n;a++){ ...原创 2019-08-21 19:56:17 · 548 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1004 成绩排名
题目链接#include <stdio.h>int main(){ int n, a, b,max,min,e; char c[1000][1000],f[1000][1000]; int d[1000]; scanf("%d", &n); for (a = 0; a < n; a++) { scanf("%s %s %d"...原创 2019-08-21 19:54:55 · 560 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1002 写出这个数
题目链接#include <stdio.h>#include<string.h>int main(){ char a[1002]; int b, c,d,e,g,m[5],n; gets(a); b = 0; c = 0; d = 0; while (a[b] != '\0') { c = c + a[b] - 48...原创 2019-08-21 19:46:18 · 522 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1001 害死人不偿命的(3n+1)猜想
题目链接#include <stdio.h>int main(){ int n, a; scanf("%d", &n); a = 0; for(;n!=1;){ if (n % 2 == 0) n = n / 2; else n = (3 * n + 1) / 2; a = a + 1;...原创 2019-08-21 19:41:22 · 566 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1010 一元多项式求导
题目链接#include<stdio.h>int main(){ int a,b,c; int d[1000]; a=0; while(1) { scanf("%d",&d[a]); if(getchar()=='\n') break; a++; } if(d[1]==0) printf("0 0"); el...原创 2019-08-25 18:53:11 · 534 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1009 说反话
题目链接#include<stdio.h>int main(){ int a, b, c; char f[80][80]; a = 0; while (1) { scanf("%s", f[a]); if (getchar() == '\n') break; a++; } printf("%s", ...原创 2019-08-25 18:51:33 · 549 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1008 数组元素循环右移问题
题目链接#include <stdio.h>int main(){ int n, m, a[100], b, c,d,e; scanf("%d %d", &n, &m); for(c=0;c<n;c++) scanf("%d", &a[c]); for (b = 1; b <= m; b++) { ...原创 2019-08-24 19:19:02 · 457 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1013 数素数
题目链接判断素数的代码:for (c = 2; c <=sqrt(b); c++) {//只需要判断到sqrt(x)即可 if (b % c == 0) {//被整除标记e=1 e = 1; break; } }题目代码:#include <stdio.h>#include&l...原创 2019-08-29 17:12:55 · 492 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 014 福尔摩斯的约会
题目链接代码:#include<stdio.h>#include<ctype.h> int main(){ char *day[]={"MON","TUE","WED","THU","FRI","SAT","SUN"}; char a[61],b[61],c[61],d[61]; int e,f,g; scanf("%s %s %...原创 2019-08-29 17:19:54 · 493 阅读 · 0 评论