- 博客(108)
- 收藏
- 关注
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题11-6 查找子串
习题11-6 查找子串 (20 分)本题要求实现一个字符串查找的简单函数。函数接口定义:char *search( char *s, char *t );函数search在字符串s中查找子串t,返回子串t在s中的首地址。若未找到,则返回NULL。裁判测试程序样例:#include <stdio.h>#define MAXS 30char *search(char *s, char *t);void ReadString( char s[] ); /* 裁判提供,细节不表 *
2021-09-11 17:37:50
377
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题10-8 递归实现顺序输出整数 (15 分)
习题10-8 递归实现顺序输出整数 (15 分)本题要求实现一个函数,对一个整数进行按位顺序输出。函数接口定义:void printdigits( int n );函数printdigits应将n的每一位数字从高位到低位顺序打印出来,每位数字占一行。裁判测试程序样例:#include <stdio.h>void printdigits( int n );int main(){ int n; scanf("%d", &n); printdi
2021-09-08 22:03:56
296
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题10-7 十进制转换二进制 (15 分)
习题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
2021-09-07 22:41:32
418
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题10-6 递归求Fabonacci数列 (10 分)
习题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
2021-09-07 21:52:36
326
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题10-5 递归计算Ackermenn函数
习题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
2021-08-30 14:32:16
179
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题10-4 递归求简单交错幂级数的部分和
习题10-4 递归求简单交错幂级数的部分和 (15 分)本题要求实现一个函数,计算下列简单交错幂级数的部分和:f(x,n)=x−x 2+x 3 −x4+⋯+(−1) n−1 x n函数接口定义:double fn( double x, int n );其中题目保证传入的n是正整数,并且输入输出都在双精度范围内。函数fn应返回上述级数的部分和。建议尝试用递归实现。裁判测试程序样例:#include <stdio.h>double fn( double x, int n );
2021-08-30 08:01:44
291
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题10-3 递归实现指数函数
习题10-3 递归实现指数函数 (15 分)浙大版《C语言程序设计(第3版)》题目集参考代码总集本题要求实现一个计算x n(n≥1)的函数。函数接口定义:double calc_pow( double x, int n );函数calc_pow应返回x的n次幂的值。建议用递归实现。题目保证结果在双精度范围内。裁判测试程序样例:输入样例:2 3结尾无空行输出样例:8解答一:double calc_pow( double x, int n ){ double sum=1;
2021-08-22 23:44:01
484
原创 习题10-2 递归求阶乘和
习题10-2 递归求阶乘和浙大版《C语言程序设计(第3版)》题目集参考代码总集本题要求实现一个计算非负整数阶乘的简单函数,并利用该函数求 1!+2!+3!+…+n! 的值。函数接口定义:double fact( int n );double factsum( int n );函数fact应返回n的阶乘,建议用递归实现。函数factsum应返回 1!+2!+…+n! 的值。题目保证输入输出在双精度范围内。裁判测试程序样例:输入样例1:10结尾无空行输出样例1:fact(10) =
2021-08-22 22:02:57
1309
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题10-1 判断满足条件的三位数 (15 分)
习题10-1 判断满足条件的三位数 (15 分)浙大版《C语言程序设计(第3版)》题目集参考代码总集本题要求实现一个函数,统计给定区间内的三位数中有两位数字相同的完全平方数(如144、676)的个数。函数接口定义:int search( int n );其中传入的参数int n是一个三位数的正整数(最高位数字非0)。函数search返回[101, n]区间内所有满足条件的数的个数。裁判测试程序样例:#include <stdio.h>#include <math.h>
2021-08-21 23:45:12
249
原创 PTA浙大版《C语言程序设计(第3版)》题目集练习10-1 使用递归函数计算1到n之和
练习10-1 使用递归函数计算1到n之和 (10 分)浙大版《C语言程序设计(第3版)》题目集参考代码总集本题要求实现一个用递归计算1+2+3+…+n的和的简单函数。函数接口定义:int sum( int n );该函数对于传入的正整数n返回1+2+3+…+n的和;若n不是正整数则返回0。题目保证输入输出在长整型范围内。建议尝试写成递归函数。裁判测试程序样例:#include <stdio.h>int sum( int n );int main(){ int n
2021-08-21 22:29:52
222
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题9-6 按等级统计学生成绩
习题9-6 按等级统计学生成绩 (20 分)浙大版《C语言程序设计(第3版)》题目集参考代码总集本题要求实现一个根据学生成绩设置其等级,并统计不及格人数的简单函数。函数接口定义:int set_grade( struct student *p, int n );其中p是指向学生信息的结构体数组的指针,该结构体的定义为:struct student{ int num; char name[20]; int score; char grade;};n是数组元素
2021-08-21 18:01:21
688
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题9-5 通讯录排序
习题9-5 通讯录排序 (20 分)输入n个朋友的信息,包括姓名、生日、电话号码,本题要求编写程序,按照年龄从大到小的顺序依次输出通讯录。题目保证所有人的生日均不相同。输入格式:输入第一行给出正整数n(<10)。随后n行,每行按照“姓名 生日 电话号码”的格式给出一位朋友的信息,其中“姓名”是长度不超过10的英文字母组成的字符串,“生日”是yyyymmdd格式的日期,“电话号码”是不超过17位的数字及+、-组成的字符串。输出格式:按照年龄从大到小输出朋友的信息,格式同输出。输入样例:3
2021-08-21 10:51:33
475
1
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题9-4 查找书籍
习题9-4 查找书籍 (20 分)给定n本书的名称和定价,本题要求编写程序,查找并输出其中定价最高和最低的书的名称和定价。输入格式:输入第一行给出正整数n(<10),随后给出n本书的信息。每本书在一行中给出书名,即长度不超过30的字符串,随后一行中给出正实数价格。题目保证没有同样价格的书。输出格式:在一行中按照“价格, 书名”的格式先后输出价格最高和最低的书。价格保留2位小数。输入样例:3Programming in C21.5Programming in VB18.5Prog
2021-08-09 23:54:13
395
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题9-3 平面向量加法
习题9-3 平面向量加法 (15 分)浙大版《C语言程序设计(第3版)》题目集参考代码总集本题要求编写程序,计算两个二维平面向量的和向量。输入格式:输入在一行中按照“x1 y1x2y2 ”的格式给出两个二维平面向量v1=(x1,y1)和v2=(x2,y2)的分量。输出格式:在一行中按照(x, y)的格式输出和向量,坐标输出小数点后一位(注意不能输出−0.0)。输入样例:3.5 -2.7 -13.9 8.7输出样例:(-10.4, 6.0)解题参考代码如下:#include
2021-07-19 22:06:25
386
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题9-1 时间换算 (15 分)
习题9-1 时间换算 (15 分)本题要求编写程序,以hh:mm:ss的格式输出某给定时间再过n秒后的时间值(超过23:59:59就从0点开始计时)。输入格式:输入在第一行中以hh:mm:ss的格式给出起始时间,第二行给出整秒数n(<60)。输出格式:输出在一行中给出hh:mm:ss格式的结果时间。输入样例:11:59:4030输出样例:12:00:10//此题需记住23:59:59后会更新为00:00:00#include <stdio.h>#include &
2021-07-19 20:56:25
262
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题8-10 输出学生成绩
习题8-10 输出学生成绩 (20 分)本题要求编写程序,根据输入学生的成绩,统计并输出学生的平均成绩、最高成绩和最低成绩。建议使用动态内存分配来实现。输入格式:输入第一行首先给出一个正整数N,表示学生的个数。接下来一行给出N个学生的成绩,数字间以空格分隔。输出格式:按照以下格式输出:average = 平均成绩max = 最高成绩min = 最低成绩结果均保留两位小数。输入样例:385 90 95输出样例:average = 90.00max = 95.00min = 85
2021-07-14 22:40:43
649
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题8-7 字符串排序
习题8-7 字符串排序 (20 分)本题要求编写程序,读入5个字符串,按由小到大的顺序输出。输入格式:输入为由空格分隔的5个非空字符串,每个字符串不包括空格、制表符、换行符等空白字符,长度小于80。输出格式:按照以下格式输出排序后的结果:After sorted:每行一个字符串输入样例:red yellow blue green white输出样例:After sorted:bluegreenredwhiteyellow“%s”把输入解释成字符串,从第一个非空空白字符开始,
2021-07-14 19:30:42
779
原创 puts()函数
puts()描述C 库函数 int puts(const char *str) 把一个字符串写入到标准输出 stdout,直到空字符,但不包括空字符。换行符会被追加到输出中。声明下面是 puts() 函数的声明。int puts(const char *str)参数str – 这是要被写入的 C 字符串。返回值如果成功,该函数返回一个非负值为字符串长度(包括末尾的 \0),如果发生错误则返回 EOF。...
2021-07-14 19:06:00
4394
1
原创 strcmp()函数
strcmp()函数描述C 库函数 int strcmp(const char *str1, const char *str2) 把 str1 所指向的字符串和 str2 所指向的字符串进行比较。声明int strcmp(const char *str1, const char *str2)参数str1 – 要进行比较的第一个字符串。str2 – 要进行比较的第二个字符串。返回值该函数返回值如下:如果返回值小于 0,则表示 str1 小于 str2。如果返回值大于 0,则表示 str
2021-07-14 18:50:26
181
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题9-2 计算两个复数之积
习题9-2 计算两个复数之积 (15 分)本题要求实现一个计算复数之积的简单函数。函数接口定义:struct complex multiply(struct complex x, struct complex y);其中struct complex是复数结构体,其定义如下:struct complex{ int real; int imag;};裁判测试程序样例:#include <stdio.h>struct complex{ int real;
2021-07-13 21:32:40
396
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题8-9 分类统计各类字符个数
习题8-9 分类统计各类字符个数 (15 分)本题要求实现一个函数,统计给定字符串中的大写字母、小写字母、空格、数字以及其它字符各有多少。函数接口定义:void StringCount( char *s );其中 char *s 是用户传入的字符串。函数StringCount须在一行内按照大写字母个数 小写字母个数 空格个数 数字个数 其它字符个数的格式输出。裁判测试程序样例:#include <stdio.h>#define MAXS 15void StringCoun
2021-07-13 21:09:57
829
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题8-8 判断回文字符串
习题8-8 判断回文字符串 (20 分)本题要求编写函数,判断给定的一串字符是否为“回文”。所谓“回文”是指顺读和倒读都一样的字符串。如“XYZYX”和“xyzzyx”都是回文。函数接口定义:bool palindrome( char *s );函数palindrome判断输入字符串char *s是否为回文。若是则返回true,否则返回false。裁判测试程序样例:#include <stdio.h>#include <string.h>#define MAXN
2021-07-12 21:02:46
661
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题8-6 删除字符 (20 分)
习题8-6 删除字符 (20 分)本题要求实现一个删除字符串中的指定字符的简单函数。函数接口定义:void delchar( char *str, char c );其中char *str是传入的字符串,c是待删除的字符。函数delchar的功能是将字符串str中出现的所有c字符删除。裁判测试程序样例:#include <stdio.h>#define MAXN 20void delchar( char *str, char c );void ReadString( cha
2021-07-12 20:06:30
931
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题8-5 使用函数实现字符串部分复制 (20 分)
习题8-5 使用函数实现字符串部分复制 (20 分)本题要求编写函数,将输入字符串t中从第m个字符开始的全部字符复制到字符串s中。函数接口定义:void strmcpy( char *t, int m, char *s );函数strmcpy将输入字符串char *t中从第m个字符开始的全部字符复制到字符串char *s中。若m超过输入字符串的长度,则结果字符串应为空串。裁判测试程序样例:#include <stdio.h>#define MAXN 20void strmcp
2021-07-12 17:53:45
250
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题8-3 数组循环右移 (20 分)
习题8-3 数组循环右移 (20 分)本题要求实现一个对数组进行循环右移的简单函数:一个数组a中存有n(>0)个整数,将每个整数循环向右移m(≥0)个位置,即将a中的数据由(a0a1⋯an−1)变换为(an−m⋯an−1 a0a1⋯an−m−1)(最后m个数循环移至最前面的m个位置)。函数接口定义:int ArrayShift( int a[], int n, int m );其中a[]是用户传入的数组;n是数组的大小;m是右移的位数。函数ArrayShift须将循环右移后的数
2021-07-10 20:59:27
495
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题8-2 在数组中查找指定元素
习题8-2 在数组中查找指定元素 (15 分)本题要求实现一个在数组中查找指定元素的简单函数。函数接口定义:int search( int list[], int n, int x );其中list[]是用户传入的数组;n(≥0)是list[]中元素的个数;x是待查找的元素。如果找到则函数search返回相应元素的最小下标(下标从0开始),否则返回−1。裁判测试程序样例:#include <stdio.h>#define MAXN 10int search( int lis
2021-07-10 19:50:34
380
原创 习题8-1 拆分实数的整数与小数部分
习题8-1 拆分实数的整数与小数部分 (15 分)本题要求实现一个拆分实数的整数与小数部分的简单函数。函数接口定义:void splitfloat( float x, int *intpart, float *fracpart );其中x是被拆分的实数(0≤x<10000),intpart和fracpart分别是将实数x拆分出来的整数部分与小数部分。裁判测试程序样例:#include <stdio.h>void splitfloat( float x, int *intp
2021-07-10 19:34:31
1277
原创 PTA浙大版《C语言程序设计(第3版)》题目集练习8-8 移动字母
练习8-8 移动字母 (10 分)本题要求编写函数,将输入字符串的前3个字符移到最后。函数接口定义:void Shift( char s[] );其中char s[]是用户传入的字符串,题目保证其长度不小于3;函数Shift须将按照要求变换后的字符串仍然存在s[]里。裁判测试程序样例:#include <stdio.h>#include <string.h>#define MAXS 10void Shift( char s[] );void GetStri
2021-07-10 19:28:02
1007
原创 strcpy函数
strcpy函数函数说明char *strcpy(char *dest, const char *src) 把 src 所指向的字符串复制到 dest。需要注意的是如果目标数组 dest 不够大,而源字符串的长度又太长,可能会造成缓冲溢出的情况。声明char *strcpy(char *dest, const char *src);参数dest – 指向用于存储复制内容的目标数组。src – 要复制的字符串。返回值该函数返回一个指向最终的目标字符串 dest 的指针。...
2021-07-10 19:26:46
112
原创 PTA浙大版《C语言程序设计(第3版)》题目集练习8-2 计算两数的和与差
练习8-2 计算两数的和与差 (10 分)本题要求实现一个计算输入的两数的和与差的简单函数。函数接口定义:void sum_diff( float op1, float op2, float *psum, float *pdiff );其中op1和op2是输入的两个实数,psum和pdiff是计算得出的和与差。裁判测试程序样例:#include <stdio.h>void sum_diff( float op1, float op2, float *psum, float *p
2021-07-10 15:25:44
744
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题7-8 字符串转换成十进制整数
习题7-8 字符串转换成十进制整数 (15 分)输入一个以#结束的字符串,本题要求滤去所有的非十六进制字符(不分大小写),组成一个新的表示十六进制数字的字符串,然后将其转换为十进制数后输出。如果在第一个十六进制字符之前存在字符“-”,则代表该数是负数。输入格式:输入在一行中给出一个以#结束的非空字符串。输出格式:在一行中输出转换后的十进制数。题目保证输出在长整型范围内。输入样例:±P-xf4±1!#输出样例:-3905...
2021-07-10 15:03:53
266
原创 toupper函数
toupper函数说明用于将小写字母转化为大写字母的函数,若参数不是小写字母就不会转换。使用前提1.包含头文件#include <ctype.h>2.函数声明int toupper(int c);参数在使用的时候,例如字符‘c’是一个有效字符,将会被转化为与ASCII表对应的整数若是无效字符,就不会发生转化。可以定义一个char型的数组使用#include <stdio.h>#include <ctype.h>int main (){
2021-07-10 14:59:03
2286
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题7-7 字符串替换
习题7-7 字符串替换 (15 分)本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:输入格式:输入在一行中给出一个不超过80个字符、并以回车结束的字符串。输出格式:输出在一行中给出替换完成后的字符串。输入样例:Only the 11 CAPItaL LeTtERS are replaced.输出样例:Lnly the 11 XZKRtaO OeGtVIH are replaced.#include <stdio.h>#include <string
2021-07-09 13:09:03
799
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题7-6 统计大写辅音字母
习题7-6 统计大写辅音字母 (15 分)英文辅音字母是除A、E、I、O、U以外的字母。本题要求编写程序,统计给定字符串中大写辅音字母的个数。输入格式:输入在一行中给出一个不超过80个字符、并以回车结束的字符串。输出格式:输出在一行中给出字符串中大写辅音字母的个数。输入样例:HELLO World!输出样例:4...
2021-07-09 11:25:37
214
原创 Gets函数解释
gets()gets能将读取到的字符串写入数组有点类似于scanf("%s",&a),但二者有区别scanf("%s",&a):读到空格就停止。gets(a)无论中间是否有空格,回车才表示读取字符串结束。
2021-07-09 00:30:10
475
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题7-4 求矩阵各行元素之和
习题7-4 求矩阵各行元素之和 (15 分)本题要求编写程序,求一个给定的m×n矩阵各行元素之和。输入格式:输入第一行给出两个正整数m和n(1≤m,n≤6)。随后m行,每行给出n个整数,其间以空格分隔。输出格式:每行输出对应矩阵行元素之和。输入样例:3 26 31 -83 12输出样例:9-715#include <stdio.h>#include <string.h> int main(){ int m,n;//定义整数,m表示行数,n表示
2021-06-29 18:35:56
458
原创 PTA浙大版《C语言程序设计(第3版)》题目集习题7-1 选择法排序
习题7-1 选择法排序 (20 分)本题要求将给定的n个整数从大到小排序后输出。输入格式:输入第一行给出一个不超过10的正整数n。第二行给出n个整数,其间以空格分隔。输出格式:在一行中输出从大到小有序的数列,相邻数字间有一个空格,行末不得有多余空格。输入样例:45 1 7 6输出样例:7 6 5 1#include <stdio.h>int main(){ int n,i,j,temp; int a[20]; scanf("%d",&n); for(i
2021-06-22 14:56:05
264
原创 PTA浙大版《C语言程序设计(第3版)》题目集练习7-11 字符串逆序
练习7-11 字符串逆序 (15 分)输入一个字符串,对该字符串进行逆序,输出逆序后的字符串。输入格式:输入在一行中给出一个不超过80个字符长度的、以回车结束的非空字符串。输出格式:在一行中输出逆序后的字符串。输入样例:Hello World!输出样例:!dlroW olleH#include <stdio.h>#include <string.h>int main(){ char a[81]; gets(a);//输入一整串的字符串。 int i;
2021-06-22 13:28:31
334
原创 PTA浙大版《C语言程序设计(第3版)》题目集练习7-10 查找指定字符
练习7-10 查找指定字符 (15 分)本题要求编写程序,从给定字符串中查找某指定的字符。输入格式:输入的第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串(不超过80个字符)。输出格式:如果找到,在一行内按照格式“index = 下标”输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出"Not Found"。输入样例1:mprogramming输出样例1:index = 7输入样例2:a1234输出样例2:Not Foundchar的基本介绍:通往ch
2021-06-21 17:38:15
366
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人