随笔分类 -  zzuil oj

摘要:给定含有n个元素的多重集合S,每个元素在S中出现的次数称为该元素的重数。多重集S中重数最大的元素称为众数。 例如,S={1,2,2,2,3,5}。多重集S的众数是2,其重数为3。 编程任务: 对于给定的由n 个自然数组成的多重集S,编程计算S 的众数及其重数。 输入 第1行多重集S中元素个数n(n< 阅读全文
posted @ 2019-03-22 22:00 Binary_tony 阅读(501) 评论(0) 推荐(0)
摘要:题目描述 有一个长度为n的整数序列。请写一个程序,先把序列中的最小值与第一个数交换,再把最大值与最后一个数交换。输出转换好的序列。 分别编写两个函数MinIndex()和MaxIndex()来计算最小值下标和最大值下标。 intMinIndex(int a[], int n); //函数返回数组a中 阅读全文
posted @ 2018-12-02 21:00 Binary_tony 阅读(736) 评论(0) 推荐(0)
摘要:题目描述 对一维数组按照从小到大的顺序排序。程序定义函数sort()来实现数组a的排序。函数原型如下: void sort(int a[], int n); 数组元素的输出调用PrintArr()。 对一维数组按照从小到大的顺序排序。程序定义函数sort()来实现数组a的排序。函数原型如下: voi 阅读全文
posted @ 2018-12-02 20:59 Binary_tony 阅读(853) 评论(0) 推荐(0)
摘要:题目描述 一个非递减有序的整型数组有n个元素,给定一个整数num,将num插入该序列的适当位置,使序列仍保持非递减有序。 要求定义一个函数insert(),将整数num插入在数组a的适当位置上,函数原型如下: int insert(int a[], int n, int num); 另外函数仍然调用 阅读全文
posted @ 2018-12-02 20:58 Binary_tony 阅读(465) 评论(0) 推荐(0)
摘要:题目描述 编写程序,输入n(1<=n<=10),输入n个整数构成一个数组,输入整数x,在这个数组中查找x是否存在,如果存在,删除x,后面元素依次向前添补空位,并输出删除元 素后的数组。如果不存在,输出“Not Found”。 定义一个查找函数find(),在数组a中查找x,若找不到函数返回-1,若找 阅读全文
posted @ 2018-12-02 20:57 Binary_tony 阅读(978) 评论(0) 推荐(0)
摘要:题目描述 数组a有n个元素,请输出n个元素的最小值及其下标。若最小值有多个,请输出下标最小的一个。注意,有效下标从0开始。 数组a有n个元素,请输出n个元素的最小值及其下标。若最小值有多个,请输出下标最小的一个。注意,有效下标从0开始。 输入 输入分两行,第一行是一个正整数n(n<=1000),第二 阅读全文
posted @ 2018-12-02 20:56 Binary_tony 阅读(532) 评论(0) 推荐(0)
摘要:题目描述 输入一个递增有序的整型数组A有n个元素,删除下标为i的元素,使其仍保持连续有序。注意,有效下标从0开始。 定义如下两个函数分别实现删除元素操作和数组输出操作。 void del(int a[], int n, int i); /*删除数组a中下标为i的元素*/ void PrintArr( 阅读全文
posted @ 2018-12-02 20:56 Binary_tony 阅读(678) 评论(0) 推荐(0)
摘要:题目描述 输入n(1<=n<=10)和n个整数,逆序输出这n个整数。 输入n(1<=n<=10)和n个整数,逆序输出这n个整数。 输入 输入n(1<=n<=10),然后输入n个整数。 输入n(1<=n<=10),然后输入n个整数。 输出 逆序输出这n个整数,每个整数占4列,右对齐。 逆序输出这n个整 阅读全文
posted @ 2018-12-02 20:55 Binary_tony 阅读(543) 评论(0) 推荐(0)
摘要:题目描述 如下程序的功能是计算 Fibonacci数列的第n项。函数fib()是一个递归函数。请你改写该程序,计算第n项的同时,统计调用了多少次函数fib(包括main()对fib()的调用)。 #include<stdio.h> int fib(int k); int main(void ) { 阅读全文
posted @ 2018-12-02 20:54 Binary_tony 阅读(1283) 评论(0) 推荐(0)
摘要:题目描述 输入n和n个整数,以与输入顺序相反的顺序输出这n个整数。要求不使用数组,而使用递归函数实现。 递归函数实现过程如下: void inverse(int n) { if(n >1) { (1) 读入一个整数,存入num; (2) 将后面的n-1个数逆序输出: inverse(n-1); (3 阅读全文
posted @ 2018-12-02 20:53 Binary_tony 阅读(1416) 评论(0) 推荐(0)
摘要:题目描述 输入一个十进制整数n,输出对应的二进制整数。常用的转换方法为“除2取余,倒序排列”。将一个十进制数除以2,得到余数和商,将得到的商再除以2,依次类推,直到商等于0为止,倒取除得的余数,即为所求的二进制数。例如,把52换算成二进制数的计算过程如下图: 52除以2得到的余数依次为0,0,1,0 阅读全文
posted @ 2018-12-02 20:53 Binary_tony 阅读(828) 评论(0) 推荐(0)
摘要:题目描述 如上图所示,由正整数1, 2, 3, ...组成了一棵无限大的二叉树。从某一个结点到根结 点(编号是1 的结点)都有一条唯一的路径,比如从10 到根结点的路径是(10, 5, 2, 1), 从4 到根结点的路径是(4, 2, 1),从该结点到根结点的路径上的所有结点称为该结点的祖先。现在的 阅读全文
posted @ 2018-11-25 20:52 Binary_tony 阅读(539) 评论(0) 推荐(0)
摘要:题目描述 输入一个正整数,输出该数的数根。数根可以通过把一个数的各个位上的数字加起来得到。如果得到的数是一位数,那么这个数就是数根。如果结果是两位数或者包括更多位的数字,那么再把这些数字加起来。如此进行下去,直到得到是一位数为止。比如,对于24来说,把2和4相加得到6,由于6是一位数,因此6是24的 阅读全文
posted @ 2018-11-25 20:51 Binary_tony 阅读(1633) 评论(0) 推荐(0)
摘要:题目描述 一个正整数,如果从左向右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数。任取一个正整数,如果不是回文数,将该数与他的倒序数相加,若其和不是回文数,则重复上述步骤,一直到获得回文数为止。例如:68变成154(68+86),再变成605(154+451),最后变成1 阅读全文
posted @ 2018-11-25 20:50 Binary_tony 阅读(563) 评论(0) 推荐(0)
摘要:题目描述 从键盘输入一个整数n(1≤n≤9),打印出指定的数字图形。要求在程序中定义并调用如下函数:PrintSpace(m)用来输出m个空格;PrintDigit(m)来输出一行中的数字串"12...m...21"(该行中的最大数字是m)。函数原型如下: void PrintDigit(int m 阅读全文
posted @ 2018-11-25 20:50 Binary_tony 阅读(2441) 评论(0) 推荐(0)
摘要:题目描述 一个正整数,如果从左向 右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数。输入两个整数m和n(m<n),输出区间[m,n]之间的回文数。 一个正整数,如果从左向 右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数。输入两个整数m和n(m 阅读全文
posted @ 2018-11-25 20:49 Binary_tony 阅读(709) 评论(0) 推荐(0)
摘要:题目描述 输入两个正整数m和n,顺序输出m到n之间的所有友好数对。 如果两个整数的所有正因子之和(包括1,不包括自身)等于对方,就称这对数是友好的。例如:1184和1210是友好数对,因为 1184的因子之和为1+2+4+8+16+32+37+74+148+296+592=1210 1210的因子之 阅读全文
posted @ 2018-11-25 20:48 Binary_tony 阅读(2051) 评论(0) 推荐(0)
摘要:题目描述 输入正整数n(2<=n<=1000),计算并输出n的所有正因子(包括1,不包括自身)之和。要求程序定义一个FacSum ()函数和一个main()函数,FacSum ()函数计算并返回n的所有正因子之和,其余功能在main()函数中实现。 int FacSum(int n) { //计算n 阅读全文
posted @ 2018-11-25 20:47 Binary_tony 阅读(465) 评论(0) 推荐(0)
摘要:题目描述 平均学分绩点(Grade Point Average,即GPA)是以学分与绩点作为衡量学生学习的量与质的计算单位,以取得一定的学分和平均学分绩点作为毕业和获得学位的标准,实施多样的教育规格和较灵活的教学管理制度。 大学里每一门课程都有一定的学分。只有通过这门课的考试,才能获得相应的学分。课 阅读全文
posted @ 2018-11-25 20:46 Binary_tony 阅读(850) 评论(0) 推荐(0)
摘要:题目描述 有两个长度为N的序列A和B,在A和B中各任取一个数相加可以得到N2个和,求这N2个和中最小的N个。 有两个长度为N的序列A和B,在A和B中各任取一个数相加可以得到N2个和,求这N2个和中最小的N个。 输入 第一行输入一个正整数N(1<=N<=100000); 第二行N个整数Ai且Ai<=1 阅读全文
posted @ 2018-10-17 19:15 Binary_tony 阅读(192) 评论(0) 推荐(0)