
C语言武理PTA
学习松松
百年交大,一研为定
展开
-
函数实现字符串逆序(武理-PTA-C实验)
本题要求实现一个字符串逆序的简单函数。函数接口定义:void f( char *p );函数f对p指向的字符串进行逆序操作。要求函数f中不能定义任何数组,不能调用任何字符串处理函数。裁判测试程序样例:#include <stdio.h>#define MAXS 20void f( char *p );void ReadString( char s ); / 由裁判实现,略去不表 */int main(){char s[MAXS];ReadString(s);f(s);原创 2020-12-04 20:34:18 · 3612 阅读 · 0 评论 -
使用函数求素数和(PTA-武理-C实验)
本题要求实现一个判断素数的简单函数、以及利用该函数计算给定区间内素数和的函数。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数。函数接口定义:int prime( int p );int PrimeSum( int m, int n );其中函数prime当用户传入参数p为素数时返回1,否则返回0;函数PrimeSum返回区间[m, n]内所有素数的和。题目保证用户传入的参数m≤n。裁判测试程序样例:#include <stdio.h>#include <ma原创 2020-12-04 20:34:51 · 732 阅读 · 0 评论 -
移动字母(PTA-武理-C实验)
本题要求编写函数,将输入字符串的前3个字符移到最后。函数接口定义:void Shift( char s[] );其中char s[]是用户传入的字符串,题目保证其长度不小于3;函数Shift须将按照要求变换后的字符串仍然存在s[]里。裁判测试程序样例:#include <stdio.h>#include <string.h>#define MAXS 10void Shift( char s[] );void GetString( char s[] ); /* 实现细原创 2020-12-04 20:35:24 · 6840 阅读 · 4 评论 -
英文单词排序(PTA-武理-C实验)
本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。输入格式:输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20个,英文单词为长度小于10的仅由小写英文字母组成的字符串。输出格式:输出为排序后的结果,每个单词后面都额外输出一个空格。输入样例:blueredyellowgreenpurple输出样例:red blue green yellow purple#include<stdio.h>原创 2020-12-04 20:35:43 · 2692 阅读 · 5 评论 -
找最长的字符串(PTA-武理-C实验)
本题要求编写程序,针对输入的N个字符串,输出其中最长的字符串。输入格式:输入第一行给出正整数N;随后N行,每行给出一个长度小于80的非空字符串,其中不会出现换行符,空格,制表符。输出格式:在一行中用以下格式输出最长的字符串:The longest is: 最长的字符串如果字符串的长度相同,则输出先输入的字符串。输入样例:5liwangzhangjinxiang输出样例:The longest is: zhang#include<stdio.h>#include&原创 2020-12-04 20:36:07 · 3410 阅读 · 1 评论 -
字符串替换(PTA-武理-C实验)
本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:原字母对应字母AZBYCXDW……XCYBZA输入格式:输入在一行中给出一个不超过80个字符、并以回车结束的字符串。输出格式:输出在一行中给出替换完成后的字符串。输入样例:Only the 11 CAPItaL LeTtERS are replaced.输出样例:Lnly the 11 XZKRtaO OeGtVIH are replaced.#include<stdio.h>原创 2020-12-04 20:36:30 · 1607 阅读 · 0 评论 -
改造字符串(PTA-武理-C实验)
编写程序,从键盘输入一个字符串(长度不超过100),然后在两个字符之间插入一个空格,输出一个新字符串。输入格式:输入一个字符串,以回车符结束。输出格式:在两个字符之间插入一个空格,生成新的字符串,在一行中输出。注意:最后一个字符后无空格。输入样例:在这里给出一组输入。例如:aabbcc输出样例:在这里给出相应的输出。例如:a a b b c c#include<stdio.h>int main(){ int i; char a[100]; gets(原创 2020-12-04 20:37:11 · 1504 阅读 · 0 评论 -
简化的插入排序(PTA-武理-C实验)
本题要求编写程序,将一个给定的整数插到原本有序的整数序列中,使结果序列仍然有序。输入格式:输入在第一行先给出非负整数N(<10);第二行给出N个从小到大排好顺序的整数;第三行给出一个整数X。输出格式:在一行内输出将X插入后仍然从小到大有序的整数序列,每个数字后面有一个空格。输入样例:51 2 4 5 73输出样例:1 2 3 4 5 7#include <stdio.h>int main(){ int x,n,i,j,a[10]; scanf("原创 2020-12-04 20:37:40 · 2359 阅读 · 0 评论 -
求整数序列中出现次数最多的数(PTA-武理-C实验)
本题要求统计一个整型序列中出现次数最多的整数及其出现次数。输入格式:输入在一行中给出序列中整数个数N(0<N≤1000),以及N个整数。数字间以空格分隔。输出格式:在一行中输出出现次数最多的整数及其出现次数,数字间以空格分隔。题目保证这样的数字是唯一的。输入样例:10 3 2 -1 5 3 4 3 0 3 2输出样例:3 4#include<stdio.h>int main(){ int N,i,j,k,max=0,a[1000],b[1000]={0};原创 2020-12-04 20:38:09 · 13480 阅读 · 4 评论 -
查询水果价格(PTA-武理-C实验)
给定四种水果,分别是苹果(apple)、梨(pear)、桔子(orange)、葡萄(grape),单价分别对应为3.00元/公斤、2.50元/公斤、4.10元/公斤、10.20元/公斤。首先在屏幕上显示以下菜单:[1] apple[2] pear[3] orange[4] grape[0] exit用户可以输入编号1~4查询对应水果的单价。当连续查询次数超过5次时,程序应自动退出查询;不到5次而用户输入0即退出;输入其他编号,显示价格为0。输入格式:输入在一行中给出用户连续输入的若干个编号原创 2020-12-04 20:38:46 · 6611 阅读 · 0 评论 -
求矩阵的局部极大值(PTA-武理-C实验)
给定M行N列的整数矩阵A,如果A的非边界元素A[i][j]大于相邻的上下左右4个元素,那么就称元素A[i][j]是矩阵的局部极大值。本题要求给定矩阵的全部局部极大值及其所在的位置。输入格式:输入在第一行中给出矩阵A的行数M和列数N(3≤M,N≤20);最后M行,每行给出A在该行的N个元素的值。数字间以空格分隔。输出格式:每行按照“元素值 行号 列号”的格式输出一个局部极大值,其中行、列编号从1开始。要求按照行号递增输出;若同行有超过1个局部极大值,则该行按列号递增输出。若没有局部极大值,则输出“No原创 2020-12-04 20:41:03 · 3458 阅读 · 1 评论 -
统计不及格人数(PTA-武理-C实验)
有4名学生,每名学生有4门课程,编写程序,要求输入所有学生的成绩,然后统计每门课不及格的人数。输入格式:输入4名学生的4门课程到二维数组a[4] [4] ,数据之间用一个空格分隔,每输入4个数,敲回车,成绩为整数。输出格式:在一行中输出每列数据中小于60的个数,即不及格人数,每个数据后有一个空格。输入样例:在这里给出一组输入。例如:86 54 78 9061 50 60 4530 90 70 8580 85 75 96输出样例:在这里给出相应的输出。例如:1 2 0 1#incl原创 2020-12-04 20:41:28 · 10989 阅读 · 3 评论 -
统计字符(PTA-武理-C实验)
本题要求编写程序,输入10个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数。输入格式:输入为10个字符。最后一个回车表示输入结束,不算在内。输出格式:在一行内按照letter = 英文字母个数, blank = 空格或回车个数, digit = 数字字符个数, other = 其他字符个数的格式输出。输入样例:aZ &09 Az输出样例:letter = 4, blank = 3, digit = 2, other = 1#include<stdio.h&原创 2020-12-04 20:45:35 · 511 阅读 · 0 评论 -
大笨钟(PTA-武理-C实验)
微博上有个自称“大笨钟V”的家伙,每天敲钟催促码农们爱惜身体早点睡觉。不过由于笨钟自己作息也不是很规律,所以敲钟并不定时。一般敲钟的点数是根据敲钟时间而定的,如果正好在某个整点敲,那么“当”数就等于那个整点数;如果过了整点,就敲下一个整点数。另外,虽然一天有24小时,钟却是只在后半天敲1~12下。例如在23:00敲钟,就是“当当当当当当当当当当当”,而到了23:01就会是“当当当当当当当当当当当当”。在午夜00:00到中午12:00期间(端点时间包括在内),笨钟是不敲的。下面就请你写个程序,根据当前时间替原创 2020-12-04 20:44:56 · 530 阅读 · 0 评论 -
龟兔赛跑(PTA-武理-C语言)
乌龟与兔子进行赛跑,跑场是一个矩型跑道,跑道边可以随地进行休息。乌龟每分钟可以前进3米,兔子每分钟前进9米;兔子嫌乌龟跑得慢,觉得肯定能跑赢乌龟,于是,每跑10分钟回头看一下乌龟,若发现自己超过乌龟,就在路边休息,每次休息30分钟,否则继续跑10分钟;而乌龟非常努力,一直跑,不休息。假定乌龟与兔子在同一起点同一时刻开始起跑,请问T分钟后乌龟和兔子谁跑得快?输入格式:输入在一行中给出比赛时间T(分钟)。输出格式:在一行中输出比赛的结果:乌龟赢输出@@,兔子赢输出_,平局则输出--;后跟1空格,再输出胜原创 2020-12-04 20:44:38 · 556 阅读 · 0 评论 -
求一元二次方程的根(PTA-武理-C实验)
本题目要求一元二次方程的根,结果保留2位小数。输入格式:输入在一行中给出3个浮点系数a、b、c,中间用空格分开。输出格式:根据系数情况,输出不同结果:1)如果方程有两个不相等的实数根,则每行输出一个根,先大后小;2)如果方程有两个不相等复数根,则每行按照格式“实部+虚部i”输出一个根,先输出虚部为正的,后输出虚部为负的;3)如果方程只有一个根,则直接输出此根;4)如果系数都为0,则输出"Zero Equation";5)如果a和b为0,c不为0,则输出"Not An Equation"。原创 2020-12-04 20:45:14 · 1911 阅读 · 0 评论 -
穷举法搬运砖块问题(PTA-武理-C实验)
这是中国古典算术问题,某工地需要搬运砖块,已知男人一人搬3块,女人一人搬2块,小孩两人搬1块。有多少种搬法用N人正好搬N块砖?输入格式:输入正整数N。输出格式:输出所有满足条件的搬法,每种搬法占一行。每行按如下格式依次输出该搬法中男人、女人、小孩的人数,按男人人数的递增顺序输出,中间用空格间隔(=前后没有多余的空格,行末也无空格)。men=男人数 women=女人数 child=小孩数...原创 2020-12-04 20:44:18 · 7722 阅读 · 0 评论 -
求特殊方程的正整数解(PTA-武理-C实验)
本题要求对任意给定的正整数N,求方程X2+Y2=N的全部正整数解。输入格式:输入在一行中给出正整数N(≤10000)。输出格式:输出方程X2+Y2=N的全部正整数解,其中X≤Y。每组解占1行,两数字间以1空格分隔,按X的递增顺序输出。如果没有解,则输出No Solution。输入样例1:884输出样例1:10 2820 22输入样例2:11输出样例2...原创 2020-12-04 20:44:01 · 2347 阅读 · 4 评论 -
打印菱形图案(PTA-武理-C实验)
本题要求编写程序,打印一个高度为n的、由“”组成的正菱形图案。输入格式:输入在一行中给出一个正的奇数n。输出格式:输出由n行星号“”组成的菱形,如样例所示。每个星号后跟一个空格。输入样例:7输出样例:** * ** * * * #include<stdio.h>int main(){ int n,i,j,N; scanf("%d"...原创 2020-12-04 20:43:33 · 905 阅读 · 0 评论 -
数字金字塔(PTA-武理-C实验)
输入一个正整数repeat (repeat<10),做repeat次下列运算:输入一个正整数n(n<10),输出n行数字金字塔。输出时使用以下语句:printf(" “);printf(”%d “, i);printf(”\n");输入格式:输入在第1行中给出1个正整数repeat(repeat<10)接下来repeat行,每行给出一个正整数n(n<10)...原创 2020-12-04 20:43:12 · 5661 阅读 · 1 评论 -
求符合给定条件的整数集(PTA-武理-C实验)
给定不超过6的正整数A,考虑从A开始的连续4个数字。请输出所有由它们组成的无重复数字的3位数。输入格式:输入在一行中给出A。输出格式:输出满足条件的的3位数,要求从小到大,每行6个整数。整数间以空格分隔,但行末不能有多余空格。输入样例:2输出样例:234 235 243 245 253 254324 325 342 345 352 354423 425 432 435 452 ...原创 2020-12-04 20:42:30 · 3281 阅读 · 1 评论 -
求给定精度的简单交错序列部分和(PTA-武理-C实验)
本题要求编写程序,计算序列部分和 1 - 1/4 + 1/7 - 1/10 + … 直到最后一项的绝对值不大于给定精度eps。输入格式:输入在一行中给出一个正实数eps。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。输入样例1:4E-2输出样例1:sum = 0.854457输入样例2:0.02输出样例2...原创 2020-12-04 20:42:14 · 1009 阅读 · 1 评论 -
简单计算器(PTA-武理-C语言实验)
模拟简单运算器的工作。假设计算器只能进行加减乘除运算,运算数和结果都是整数,四种运算符的优先级相同,按从左到右的顺序计算。输入格式:输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数。遇等号”=”说明输入结束。输出格式:在一行中输出算式的运算结果,或者如果除法分母为0或有非法运算符,则输出错误信息“ERROR”。输入样例:1+2*10-10/2=输出样例:10#inc...原创 2020-12-04 20:41:57 · 725 阅读 · 0 评论