PTA
是个程序汪
这个作者很懒,什么都没留下…
展开
-
习题5-6 使用函数输出水仙花数
水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。例如:153=13+53+33。 本题要求编写两个函数,一个判断给定整数是否水仙花数,另一个按从小到大的顺序打印出给定区间(m,n)内所有的水仙花数。函数接口定义:int narcissistic( int number );void PrintN( int m, int n );函数narcissistic判断number是否为水仙花数,是则返回1,否则返回0。函数PrintN则打印开区间(m, n)内所原创 2021-08-04 15:43:12 · 1613 阅读 · 2 评论 -
习题5-5 使用函数统计指定数字的个数
本题要求实现一个统计整数中指定数字的个数的简单函数。函数接口定义:int CountDigit( int number, int digit );其中number是不超过长整型的整数,digit为[0, 9]区间内的整数。函数CountDigit应返回number中digit出现的次数。裁判测试程序样例:#include <stdio.h>int CountDigit( int number, int digit );int main(){int number, digit;原创 2021-08-03 15:46:46 · 251 阅读 · 0 评论 -
习题5-4 使用函数求素数
本题要求实现一个计算m~n(m<n)之间所有整数的和的简单函数。函数接口定义:int sum( int m, int n );其中m和n是用户传入的参数,保证有m<n。函数返回的是m~n之间所有整数的和。裁判测试程序样例:#include <stdio.h>int sum(int m, int n);int main(){int m, n;scanf("%d %d", &m, &n);printf("sum = %d\n", sum(m, n))原创 2021-07-22 19:58:16 · 277 阅读 · 0 评论 -
习题5-3 使用函数计算两点间的距离 (10 分) 本题要求实现一个函数,对给定平面任意两点坐标(x 1 ,y 1 )和(x 2 ,y 2 ),求这两点之间的距离。
习题5-3 使用函数计算两点间的距离 (10 分)本题要求实现一个函数,对给定平面任意两点坐标(x1 ,y1 )和(x2 ,y2 ),求这两点之间的距离。函数接口定义:double dist( double x1, double y1, double x2, double y2 );其中用户传入的参数为平面上两个点的坐标(x1, y1)和(x2, y2),函数dist应返回两点间的距离。裁判测试程序样例:#include <stdio.h>#原创 2021-07-23 20:30:55 · 2875 阅读 · 0 评论 -
习题5-2 使用函数求奇数和 (15 分) 本题要求实现一个函数,计算N个整数中所有奇数的和,同时实现一个判断奇偶性的函数。
本题要求实现一个函数,计算N个整数中所有奇数的和,同时实现一个判断奇偶性的函数。函数接口定义:int even( int n );int OddSum( int List[], int N );其中函数even将根据用户传入的参数n的奇偶性返回相应值:当n为偶数时返回1,否则返回0。函数OddSum负责计算并返回传入的N个整数List[]中所有奇数的和。裁判测试程序样例:#include <stdio.h>#define MAXN 10int even( int n );int原创 2021-07-23 20:25:02 · 3047 阅读 · 4 评论 -
习题5-1 符号函数 (10 分) 本题要求实现符号函数sign(x)。
本题要求实现符号函数sign(x)。函数接口定义:int sign( int x );其中x是用户传入的整型参数。符号函数的定义为:若x大于0,sign(x) = 1;若x等于0,sign(x) = 0;否则,sign(x) = −1。裁判测试程序样例:#include <stdio.h>int sign( int x );int main(){int x;scanf("%d", &x);printf("sign(%d) = %d\n", x, sign(x));原创 2021-07-23 20:17:38 · 9659 阅读 · 2 评论 -
5-3 数字金字塔 本题要求实现函数输出n行数字金字塔。
本题要求实现函数输出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 0;}/* 你的代码将被嵌在这里 */原创 2021-07-23 13:57:02 · 3393 阅读 · 0 评论 -
希尔排序
文章目录希尔排序PTA6-11 自定义元素序列的中位数希尔排序希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。简单插入排序很循规蹈矩,不管数组分布是怎么样的,依然一步一步的对元素进行比较,移动,插入,比如[5,4,3,2,1,0]这种倒序序列,数组末端的0要回到首位置很是费劲,比较和移动元素均需n-1次。而希尔排序在数组中采用跳跃式分组的策略,通过某个增量将数组元素划分为若干组,然后分组原创 2020-10-04 22:29:30 · 201 阅读 · 0 评论