![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PTA练习笔记
主要写自己曾经在PTA上所做过的一些题目
浩丶木
这个作者很懒,什么都没留下…
展开
-
习题10-4 递归求简单交错幂级数的部分和 (15分)
本题要求实现一个函数,计算下列简单交错幂级数的部分和: f(x,n)=x−x2 +x3 −x4 +⋯+(−1)n−1 xn (数字都是次方) 函数接口定义: double fn( double x, int n ); 其中题目保证传入的n是正整数,并且输入输出都在双精度范围内。函数fn应返回上述级数的部分和。建议尝试用递归实现。 裁判测试程序样例: #include <stdio.h> double fn( double x, int n ); int main原创 2021-01-22 09:17:24 · 73 阅读 · 0 评论 -
习题5-6 使用函数输出水仙花数 (20分)
水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身 。 本题要求编写两个函数,一个判断给定整数是否水仙花数,另一个按从小到大的顺序打印出给定区间(m,n)内所有的水仙花数。 函数接口定义: int narcissistic( int number ); void PrintN( int m, int n ); 函数narcissistic判断number是否为水仙花数,是则返回1,否则返回0。 函数PrintN则打印开区间(m, n)内所有的水仙花数,每个数字占一行。题目保原创 2021-01-27 11:49:00 · 120 阅读 · 0 评论 -
练习5-3 数字金字塔 (15分)
本题要求实现函数输出n行数字金字塔。 函数接口定义: void pyramid( int n ); 其中n是用户传入的参数,为[1, 9]的正整数。要求函数按照如样例所示的格式打印出n行数字金字塔。注 意每个数字后面跟一个空格。 裁判测试程序样例: #include <stdio.h> void pyramid( int n ); int main() { int n; scanf("%d", &n); pyramid(n); return原创 2021-01-27 11:45:00 · 146 阅读 · 0 评论 -
习题10-1 判断满足条件的三位数 (15分)
本题要求实现一个函数,统计给定区间内的三位数中有两位数字相同的完全平方数(如144、676)的个数。 函数接口定义: int search( int n ); 其中传入的参数int n是一个三位数的正整数(最高位数字非0)。函数search返回[101, n]区间内所有满足条件的数的个数。 裁判测试程序样例: #include <stdio.h> #include <math.h> int search( int n ); int main() { int number;原创 2021-01-27 11:43:40 · 102 阅读 · 0 评论 -
习题10-4求简单交错幂级数的部分和 (15分)
习题10-4 求简单交错幂级数的部分和 (15分) 本题要求实现一个函数,计算下列简单交错幂级数的部分和: f(x,n)=x−x2+x3−x4 +⋯+(−1)n−1xn(数字都是次方) 函数接口定义: double fn( double x, int n ); 其中题目保证传入的n是正整数,并且输入输出都在双精度范围内。函数fn应返回上述级数的部分和。 裁判测试程序样例: #include <stdio.h> double fn( double x, int n ); int ma原创 2021-01-24 11:16:30 · 399 阅读 · 0 评论 -
习题10-5 递归计算Ackermenn函数 (15分)
本题要求实现Ackermenn函数的计算,其函数定义如下: 函数接口定义: int Ack( int m, int n ); 其中m和n是用户传入的非负整数。函数Ack返回Ackermenn函数的相应值。题目保证输入输出都在长整型 范围内。 裁判测试程序样例: #include <stdio.h> int Ack( int m, int n ); int main() { int m, n; scanf("%d %d", &m, &n); printf("%d\n", Ack(原创 2021-01-20 18:58:04 · 179 阅读 · 0 评论 -
习题10-6 递归求Fabonacci数列 (10分)
本题要求实现求Fabonacci数列项的函数。Fabonacci数列的定义如下: f(n)=f(n−2)+f(n−1) (n≥2),其中f(0)=0,f(1)=1。 函数接口定义: int f( int n ); 函数f应返回第n个Fabonacci数。题目保证输入输出在长整型范围内。建议用递归实现。 裁判测试程序样例 #include <stdio.h> int f( int n ); int main() { int n; scanf("%d", &n);`在原创 2021-01-16 10:54:37 · 200 阅读 · 0 评论 -
习题10-7 十进制转换二进制 (15分)
本题要求实现一个函数,将正整数n转换为二进制后输出。 函数接口定义 void dectobin( int n ); 函数dectobin应在一行中打印出二进制的n。建议用递归实现。 裁判测试程序样例: #include <stdio.h> void dectobin( int n ); int main() { int n; scanf("%d", &n); dectobin(n); return 0; } /* 你的代码将被嵌在这里 */原创 2021-01-14 21:04:17 · 215 阅读 · 0 评论 -
习题10-8 递归实现顺序输出整数 (15分)
本题要求实现一个函数,对一个整数进行按位顺序输出。 函数接口定义: void printdigits( int n ); 函数printdigits应将n的每一位数字从高位到低位顺序打印出来,每位数字占一行。 裁判测试程序样例: #include <stdio.h> void printdigits( int n ); int main() { int n; scanf("%d", &n); printdigits(n); return 0; }原创 2021-01-14 21:02:33 · 82 阅读 · 0 评论 -
习题11-1 输出月份英文名 (15分)
习题11-1 输出月份英文名 (15分) 本题要求实现函数,可以返回一个给定月份的英文名称。 函数接口定义: char *getmonth( int n ); 函数getmonth应返回存储了n对应的月份英文名称的字符串头指针。如果传入的参数n不是一个代表月份的数字,则返回空指针NULL。 裁判测试程序样例: #include <stdio.h> char *getmonth( int n ); int main() { int n; char *s; scanf原创 2021-01-14 21:00:41 · 94 阅读 · 0 评论 -
习题11-2 查找星期 (15分)
本题要求实现函数,可以根据下表查找到星期,返回对应的序号。 序号 星期 0 Sunday 1 Monday 2 Tuesday 3 Wednesday 4 Thursday 5 Friday 6 Saturday 函数接口定义: int getindex( char *s ); 函数getindex应返回字符串s序号。如果传入的参数s不是一个代表星期的字符串,则返回-1。 裁判测试程序样例: #include <stdio.h> #include <string.h> #defin原创 2021-01-13 20:34:19 · 86 阅读 · 0 评论 -
习题8-4 报数 (20分)
习题8-4 报数 (20分) 报数游戏是这样的:有n个人围成一圈,按顺序从1到n编好号。从第一个人开始报数,报到m(<n)的人退出圈子;下一个人从1开始报数,报到m的人退出圈子。如此下去,直到留下最后一个人。 本题要求编写函数,给出每个人的退出顺序编号。 函数接口定义: void CountOff( int n, int m, int out[] ); 其中n是初始人数;m是游戏规定的退出位次(保证为小于n的正整数)。函数CountOff将每个人的退出顺序编号存在数组out[]中。因为C语言数组下标原创 2021-01-09 09:37:12 · 162 阅读 · 0 评论 -
习题11-3 计算最长的字符串长度 (15分)
本题要求实现一个函数,用于计算有n个元素的指针数组s中最长的字符串的长度。 函数接口定义: int max_len( char *s[], int n ); 其中n个字符串存储在s[]中,函数max_len应返回其中最长字符串的长度。 裁判测试程序样例: #include <stdio.h> #include <string.h> #include <stdlib.h> #define MAXN 10 #define MAXS 20 int max_len( cha原创 2021-01-09 09:30:26 · 145 阅读 · 0 评论 -
习题11-4 字符串的连接 (15分)
本题要求实现一个函数,将两个字符串连接起来。 函数接口定义: char *str_cat( char *s, char *t ); 函数str_cat应将字符串t复制到字符串s的末端,并且返回字符串s的首地址。 裁判测试程序样例 #include <stdio.h> #include <string.h> #define MAXS 10 char *str_cat( char *s, char *t ); int main() { char *p; char原创 2021-01-09 09:28:05 · 296 阅读 · 0 评论