PTA
111
莫逸雪
戒骄戒躁,面包会有的,牛奶也会有的。
展开
-
输出整数各位数字(c语言 )
本题要求编写程序,对输入的一个整数,从高位(低位)开始逐位分割并输出它的各位数字。输入格式:输入在一行中给出一个长整型范围内的非负整数。输出格式:从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格。输入样例:123456输出样例:1 2 3 4 5 6(6 5 4 3 2 1)正序输出,代码如下:#include<stdio.h>int main(){...原创 2018-10-26 11:12:06 · 64419 阅读 · 3 评论 -
最大公约数和最小公倍数(C语言)
本题要求两个给定正整数的最大公约数和最小公倍数。输入格式:输入在一行中给出两个正整数M和N(≤1000)。输出格式:在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1空格分隔。输入样例:511 292输出样例:73 2044#include<stdio.h>int Yueshu(int i,int j){ int t=0; while(j!=0){ ...原创 2018-10-24 10:03:56 · 1187 阅读 · 1 评论 -
猜数字游戏(C语言)
猜数字游戏是令游戏机随机产生一个100以内的正整数,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较,并提示大了(“Too big”),还是小了(“Too small”),相等表示猜到了。如果猜到,则结束程序。程序还要求统计猜的次数,如果1次猜出该数,提示“Bingo!”;如果3次以内猜到该数,则提示“Lucky You!”;如果超过3次但是在N(>3)次以内(包...原创 2018-10-24 09:19:09 · 4283 阅读 · 0 评论 -
PTA 简单计算器(C语言)
模拟简单运算器的工作。假设计算器只能进行加减乘除运算,运算数和结果都是整数,四种运算符的优先级相同,按从左到右的顺序计算。输入格式:输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数。遇等号”=”说明输入结束。输出格式:在一行中输出算式的运算结果,或者如果除法分母为0或有非法运算符,则输出错误信息“ERROR”。输入样例:1+2*10-10/2=输出样例:10代码如下...原创 2018-10-23 11:09:40 · 13219 阅读 · 5 评论 -
PTA-矩阵运算(C语言)
#include <stdio.h>int main(){ int n,sum=0; scanf("%d",&n); int mov[n][n]; for(int i=0;i<n;i++) for(int j=0;j<n;j++) scanf("%d",&mov[i][j]); for(int i=0;i<n-1;i++) ...原创 2018-11-11 20:27:20 · 17648 阅读 · 6 评论 -
PTA-删除重复字符(C语言)
本题要求编写程序,将给定字符串去掉重复的字符后,按照字符ASCII码顺序从小到大排序后输出。输入格式:输入是一个以回车结束的非空字符串(少于80个字符)。输出格式:输出去重排序后的结果字符串。输入样例:ad2f3adjfeainzzzv输出样例:23adefijnvz#include <stdio.h>#include<string.h>//排序 i...原创 2018-12-04 11:16:49 · 6690 阅读 · 3 评论 -
PTA-找最长的字符串(C语言)
本题要求编写程序,针对输入的N个字符串,输出其中最长的字符串。输入格式:输入第一行给出正整数N;随后N行,每行给出一个长度小于80的非空字符串,其中不会出现换行符,空格,制表符。输出格式:在一行中用以下格式输出最长的字符串:The longest is: 最长的字符串如果字符串的长度相同,则输出先输入的字符串。输入样例:5liwangzhangjinxiang输出样例:...原创 2018-12-04 12:09:41 · 12184 阅读 · 2 评论 -
PTA-切分表达式——写个tokenizer吧(C语言)
[先说点出题背景]这个题是为低年级同学、学C语言的同学准备的,因为,对这部分同学,这个题目编写起来略有一点复杂。如果是高年级、学过了正则表达式(Regular Expression)的同学或者学过了Java等OO语言的同学做这个题,应当发现这题比较简单吧。哦,对了,什么是tokenizer?请自行查询解决。反正在此处不应翻译成“令牌解析器”。[正题]四则运算表达式由运算数(必定包含数字,可能...原创 2018-12-04 18:38:45 · 1309 阅读 · 1 评论 -
PTA-查验身份证(C语言)
一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下:首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值:Z:0 1 2 3 4 5 6 7 8 9 10M:1 0 X 9 8 7 6 5 4 3 2现在给定一些身份...原创 2018-12-05 10:02:43 · 23057 阅读 · 10 评论 -
PTA- 最长对称子串(C语言)
对给定的字符串,本题要求你输出最长对称子串的长度。例如,给定Is PAT&amp;TAP symmetric?,最长对称子串为s PAT&amp;TAP s,于是你应该输出11。输入格式:输入在一行中给出长度不超过1000的非空字符串。输出格式:在一行中输出最长对称子串的长度。输入样例:Is PAT&amp;TAP symmetric?输出样例:11#include &lt;st...原创 2018-12-05 18:22:36 · 6015 阅读 · 5 评论 -
PTA-近似求PI(C语言)
#include <stdio.h>int main() { double eps,sum=1.0,num=1,i; scanf("%le", &eps); for(i=1;num>eps;i++){ num=num*i/(i*2+1); sum+=num; } printf("PI = %0.5f",sum*2); ...原创 2018-12-05 21:53:45 · 5821 阅读 · 0 评论 -
PTA-求整数序列中出现次数最多的数(C语言)
本题要求统计一个整型序列中出现次数最多的整数及其出现次数。输入格式:输入在一行中给出序列中整数个数N(0<N≤1000),以及N个整数。数字间以空格分隔。输出格式:在一行中输出出现次数最多的整数及其出现次数,数字间以空格分隔。题目保证这样的数字是唯一的。输入样例:10 3 2 -1 5 3 4 3 0 3 2输出样例:3 4我的做法:采用二维数组第一行存整数,第二行存放入数...原创 2018-12-03 20:48:28 · 8726 阅读 · 0 评论 -
PTA-字符串逆序(C语言)
输入一个字符串,对该字符串进行逆序,输出逆序后的字符串。输入格式:输入在一行中给出一个不超过80个字符长度的、以回车结束的非空字符串。输出格式:在一行中输出逆序后的字符串。输入样例:Hello World!输出样例:!dlroW olleH#include <stdio.h>#include<string.h>int main(){ char ...原创 2018-12-03 22:09:38 · 9788 阅读 · 2 评论 -
PTA-数组元素循环右移问题(C语言)
输出格式:在一行中输出循环右移M位以后的整数序列,之间用空格分隔,序列结尾不能有多余空格。输入样例:6 21 2 3 4 5 6输出样例:5 6 1 2 3 4做这个题我觉得还是抠字眼三个字比较重要,比如说不许另加数组,但是可以把一个数组做的空间大一些就可以简单转移了;0<=M<=100,N>=0,注意N有可能大于M;另外感觉多多练习用处很大,类似的题目又很容易解...原创 2018-11-11 16:38:11 · 15370 阅读 · 4 评论 -
PTA-求n以内最大的k个素数以及它们的和(C语言)
输入样例1:1000 10输出样例1:997+991+983+977+971+967+953+947+941+937=9664输入样例2:12 6输出样例2:11+7+5+3+2=28#include <stdio.h>//判断素数int prime(int num){ int flag=1; for(int i=2;i<(num-1);i++){ ...原创 2018-11-10 21:59:13 · 11388 阅读 · 1 评论 -
PTA-韩信点兵
在中国数学史上,广泛流传着一个“韩信点兵”的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳。据说韩信的数学水平也非常高超,他在点兵的时候,为了知道有多少兵,同时又能保住军事机密,便让士兵排队报数:按从1至5报数,记下最末一个士兵报的数为1;再按从1至6报数,记下最末一个士兵报的数为5;再按从1至7报数,记下最末一个士兵报的数为4;最后按从1至11报数,最末一...原创 2018-10-26 10:39:57 · 2525 阅读 · 1 评论 -
PTA-支票面额(C语言)
一个采购员去银行兑换一张y元f分的支票,结果出纳员错给了f元y分。采购员用去了n分之后才发觉有错,于是清点了余额尚有2y元2f分,问该支票面额是多少?输入格式:输入在一行中给出小于100的正整数n。输出格式:在一行中按格式y.f输出该支票的原始面额。如果无解,则输出No Solution。输入样例1:23输出样例1:25.51输入样例2:22输出样例2:No Solutio...原创 2018-10-26 12:11:36 · 1575 阅读 · 0 评论 -
PTA-龟兔赛跑(C语言)
#include<stdio.h>int main(){ int t=0,t1=0,t2=0,W=0,T=0; scanf("%d",&t); while(t1<t&&t>0){ if(t1%10==0&&T>W){ t2=t1+30; while(t1<t2&原创 2018-10-26 15:45:27 · 11549 阅读 · 0 评论 -
PTA-计算阶乘和(C语言)
对于给定的正整数N,需要你计算 S=1!+2!+3!+…+N!。输入格式:输入在一行中给出一个不超过10的正整数N。输出格式:在一行中输出S的值。输入样例:3输出样例:9#include<stdio.h>int main(){ int n=0,sum=0,t=1; scanf("%d",&n); for(int i=1;i<=n;i++)...原创 2018-10-26 16:41:02 · 21323 阅读 · 10 评论 -
PTA-整除光棍(C语言)
这里所谓的“光棍”,并不是指单身汪啦~ 说的是全部由1组成的数字,比如1、11、111、1111等。传说任何一个光棍都能被一个不以5结尾的奇数整除。比如,111111就可以被13整除。 现在,你的程序要读入一个整数x,这个整数一定是奇数并且不以5结尾。然后,经过计算,输出两个数字:第一个数字s,表示x乘以s是一个光棍,第二个数字n是这个光棍的位数。这样的解当然不是唯一的,题目要求你输出最小的解。...原创 2018-10-26 19:56:36 · 3829 阅读 · 1 评论 -
PTA-黑洞数(C语言)
黑洞数也称为陷阱数,又称“Kaprekar问题”,是一类具有奇特转换特性的数。任何一个各位数字不全相同的三位数,经有限次“重排求差”操作,总会得到495。最后所得的495即为三位黑洞数。所谓“重排求差”操作即组成该数的数字重排后的最大数减去重排后的最小数。(6174为四位黑洞数。)例如,对三位数207:第1次重排求差得:720 - 27 = 693;第2次重排求差得:963 - 369 =...原创 2018-10-27 12:17:16 · 10740 阅读 · 3 评论 -
PTA-找完数(C语言)
所谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、3为6的因子。本题要求编写程序,找出任意两正整数m和n之间的所有完数。输入格式:输入在一行中给出2个正整数m和n(1<m≤n≤10000),中间以空格分隔。输出格式:逐行输出给定范围内每个完数的因子累加形式的分解式,每个完数占一行,格式为“完数 = 因子1 + 因子2 + … + 因子k”,其中完数和因子均...原创 2018-10-27 15:55:28 · 19974 阅读 · 6 评论 -
PTA-爬动的蠕虫(C语言)
一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。输入格式:输入在一行中顺序给出3个正整数N、U...原创 2018-10-27 16:20:38 · 1547 阅读 · 2 评论 -
PTA-二进制的前导的零(语言)
计算机内部用二进制来表达所有的值。一个十进制的数字,比如18,在一个32位的计算机内部被表达为00000000000000000000000000011000。可以看到,从左边数过来,在第一个1之前,有27个0。我们把这些0称作前导的零。现在,你的任务是写一个程序,输入一个整数,输出在32位表达下它前导的零的个数。输入格式:一个整数,在32位的整数可以表达的范围内。输出格式:一个整数,表...原创 2018-10-27 17:56:10 · 492 阅读 · 0 评论 -
PTA-求组合数(C语言)
本题要求编写程序,根据公式Cnm =m!(n−m)!n! 算出从n个不同元素中取出m个元素(m≤n)的组合数。建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。输入格式:输入在一行中给出两个正整数m和n(m≤n),以空格分隔。输出格式:按照格式“result = 组合数计算结果”输出。题目保证结果在double类型范围...原创 2018-10-27 19:17:44 · 15797 阅读 · 1 评论 -
PTA-找出总分最高的学生(C语言)
给定N个学生的基本信息,包括学号(由5个数字组成的字符串)、姓名(长度小于10的不包含空白字符的非空字符串)和3门课程的成绩([0,100]区间内的整数),要求输出总分最高学生的姓名、学号和总分。输入格式:输入在一行中给出正整数N(≤10)。随后N行,每行给出一位学生的信息,格式为“学号 姓名 成绩1 成绩2 成绩3”,中间以空格分隔。输出格式:在一行中输出总分最高学生的姓名、学号和总分,...原创 2018-11-10 16:35:05 · 11295 阅读 · 1 评论 -
PTA-平面向量加法(C语言)
#include <stdio.h>int main(){ double x1,x2,y1,y2,x,y; scanf("%lf %lf %lf %lf",&x1,&y1,&x2,&y2); x=x1+x2;y=y1+y2; if(x>-0.05&&x<0){ x=0.0; } if(y>-0.05&am原创 2018-11-10 21:26:30 · 6403 阅读 · 8 评论 -
掉入陷阱的数字(C语言)
#include<stdio.h>int Sum(int num){ int sum = 0; while(num!=0){ sum += num%10; num /= 10; } return sum*3+1;}int main(){ int num1=0,r1=0,t=0,r=0,num2=0; scan...原创 2018-10-25 16:20:44 · 4909 阅读 · 0 评论