习题四--函数

上传人:mg****85 文档编号:34253170 上传时间:2018-02-22 格式:DOC 页数:4 大小:59.19KB
返回 下载 相关 举报
习题四--函数_第1页
第1页 / 共4页
习题四--函数_第2页
第2页 / 共4页
习题四--函数_第3页
第3页 / 共4页
习题四--函数_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《习题四--函数》由会员分享,可在线阅读,更多相关《习题四--函数(4页珍藏版)》请在金锄头文库上搜索。

1、【第 1 页 共 4 页】一、A 类程序设计题1、编写一个求梯形面积的函数,在主函数中调用2、编写函数,求sinh(x)的值,sinh(x)=(e x-e-x)/23、已知三角形的三边,求三角形面积,将其编写成一个函数。4、编写一个函数实现求10个数的最大值函数5、编写一个函数来检验输入的一个字符是大写字母还是小写字母英文字母。6、使用函数重载的方法定义两个重名函数,分别求出整型数的两点间距离和浮点型数的两点间距离。7、编写函数将化氏温度转换为摄氏温度,公式为C=(F-32)*5/9;并在主函数中调用。8、编写一个函数来检验输入的一个字符是0-9。9、利用重载编写求整数绝对值和求实数绝对值两个

2、函数。10、使用静态局部变量,编写一个函数计算13的阶乘。11、重载求平方的函数,实现求整数、单精度浮点数和双精度浮点数的平方值。12、完成函数,参数为两个 unsigned short int 型数,返回值为第一个参数除以第二个参数的结果,数据类型为 short int;如果第二个参数为 0,则返回值为-1。在主程序中实现输入输出。13、编写一个函数求长方体的体积,长方体的长、宽、高的默认值分别为30、20、10。在主函数中进行输入输出。14、编写程序求 的值,其中arctan用如下形式的级数计算:(编写函数)直到级数某项绝对值不大于 10-10为止; 和 x均为 double型。15、编写

3、三个名为 add的重载函数,分别实现两整数相加、两实数相加和两个复数相加的功能。16、求方程 的根,用三个函数分别求当 、 和02cbxa 042acb042acb是的根,并输出结果。从主函数输入系数。042cb17、写一个判别素数的函数,从主函数输入一个整数,输出是否为素数的信息。18、定义一个带参数的宏,求三角形的周长。在主程序中,使用它19、定义一个参数的宏,求梯形的面积。在主程序中,使用它20、编写带默认参数的函数,求 2个或 3个整数中的最大数。并在组程序中实现二、B 类程序设计题1、编写两个函数,输入的整数按字符串形式逆序输出,要求分别用递归算法和非递归算法实现。如:输入 1234

4、5,输出:5 4 3 2 12、编写函数利用递归的方法计算 x的 n阶勒让德多项式的值。该公式如下:2391arctn451arctn6L31)arctn(xx01)(n【第 2 页 共 4 页】3、利用函数调用求组合数 。 ni14、在主程序中,输入 n,用递归方法编写函数,求 1+2+3+n5、在主程序中,输入 n,用递归方法编写函数求 n!6、将一个整数的各个位上的数字加起来(用函数完成),并输出结果。7、分别利用非递归和递归的方法编写函数求斐波那契数列第 n项。8、编程计算 1 k + 2k + 3k + + nk,用带两个参数的函数实现9、input 函数输入 10个整数,并求出它们

5、的最大值、最小值和总和。主函数 main调用 input函数,并输出这 10个整数的最大值、最小值和总和。10、设计一个递归函数,计算一个整数的各位数字之和。11、用内联函数实现求出一维数组的最大值。在主函数中输入数组元素值,调用求最大值函数,并输出数组最大值。12、用弦截法,求方程 的根,用函数实现0816523xxf13、用牛顿迭代法,求方程在 1附近的根, ,用函数实现4323x14、编写函数,计算,当最后一项小于 0.00001时,累加结束。X在主函数中,通过从键盘输入15、编无参函数,void print(),并结合使用全局变量 k与 n,使每调用一次该函数,总显示出 k行“+”符号

6、来,且每行均显示连续的 n个“+”符号。并编制主函数 main,对该函数进行具体调用。16、编写两个数的最大公约数的函数,在主程序中调用。17、设 f(x) = x*x + x/2.1 8; g(x) = 2*f(x) 3.5*f(2*x) + 5.5;编程序,对 x=-5,-4,-3,3,4,5,计算各 g(x)之值并输出这 11个计算结果。18、编写递归和非递归两种函数power(a,n),用于求出实数a的n次方。并编制主函数,输入不同的实数a及正整数n,而后通过调用power函数来进行求解。提示:可按如下公式来编制递归处理函数power(a,n)=a; 若n等于1power(a,n)=a

7、 * power(a,n-1); 若n大于1。19、设f(x) = a0x9 + a1x8 + + a8x + a9 ;(其中的各ai 为常数),编制计算上述f 值的自定义函数,并编出main 函数,对任意输入的x,计算出y=f(x)之值并显示在屏幕上。假设各系数ai 存放于一个a 数组中,并通过如下语句来说明a 数组并置初值。double a10=1, 2, 0.3, -2, 3.5, 0, -8.1, 3.3, -6, 1.68;要求按照如下三种处理方法来编制函数f(如依次称为f1、f2、f3),并编制main,用同一个实参x 去调用它们(应该得到三个相同的函数返回值y)。f1 函数:通过

8、调用标准库函数pow(x,n)来计算x 的n 次方,而后通过循环累加出y。f2 函数:通过调用自定义函数myPow(x,n)来计算x 的n 次方,而后通过循环累加出y。f3 函数:分析并构造如下形式的循环来计算yy = a0;for ( . )y = y*x + ai; 11111 32 xxxxs 【第 3 页 共 4 页】三、C 类程序设计题1、编制具有如下原型的函数prime,用来判断整数n 是否为素数。bool prime(int n);而后编写主函数main,输入任意一个大于4 的偶数d,找出满足d=d1+d2 的所有数对,其中要求d1 与d2 均为素数(通过调用prime 来判断素

9、数) 。如偶数80 可以分解为:7+73、13+67、19+61、37+43。2、编写一个函数求满足以下条件的最大的 n: 1 2+22+32+n210003、编制具有如下原型的函数 long dif(int y1, int m1, int d1, int y2, int m2, int d2);它负责计算出两个日期的间隔天数并返回。其中的 y1、m1、d1 表示第一个日期的年、月、日;而 y2、m2、d2 表示第二个日期的年、月、日。而后编制主函数,对 dif进行调用,以验证它的正确性。4、在主程序中提示输入 n,编写函数用递归的方法求 1+2+n 的和。5、编写一个将 x进制正整数 n化为

10、 10进制数并输出结果的函数(x 为 2或 8) ,具有如下原型: void ChgXTo10 (int n, int x);并编写主函数对它进行调用来验证其正确性。6、编写判断勾股数的函数。打印出 100 内的所有的勾股数。勾股数就是满足 x2+y2=z2的自然数。最小是勾股数 5,4,3。7、编写一个函数 countk(long k,count10) ,求出证书 k 中数字 0 到 9 出现的次数,并计入 count10中。8、编写求最大公约数和最小公倍数的函数,输入 m,n(要求输入数均大于 0) ,输出它们的最大公约数和最小公倍数。其中,写最小公倍数的函数时,要求调用求最大公约数的函数

11、9、寻找四位数的超级素数。超级素数的定义为:若一个素数从低位到高位依次去掉一位数后仍然是素数,则此数为超级素数。例如,数 2333 是素数,且 233、23、2 均是素数,所以 2333 是一个超级素数,用定义函数的方式实现。主程序中,输入位数。10、寻找并输出 11999之间的数 m,它满足 m、m2 和 m3均为回文数。回文:各位数字左右对称的整数,用定义函数的方式实现。主程序中,输入范围(两个参数) 。11、编一个返回真假值(布尔值)的函数 symm,实现如下功能:若正整数 n为“回文数” (正读与反读为相同大小的数)的话,返回 true,否则返 false。其函数原型为:bool sy

12、mm(long n);并编主函数,通过调用 symm,求出 1000以内所有满足下述特征的 m: m和 7*m以及3*m*m都是“回文数” ,如 1,11,88, ( 因为 m=1,7*m=7,3*m*m=3; m=11,7*m=77,3*m*m=363; m=88,7*m=616,3*m*m=23232; ) 。12、输出所有的“水仙花数” ,所谓“水仙花数”是指一个 3位数,其各位数字的立方之和等于该数本身。例如,153 是一个水仙花数,因为 153 = 13 + 53 +33。用函数来判断时否是“水仙花数” 。13、用户任意输入一个年份以及该年的 1月 1日是星期几,而后任意指定某一天(

13、再输入该年的任意一个月份日期) ,由程序计算出这一天是星期几。注意,2 月份闰年为 29天,非闰年为 28天;可被 4整除而不可被 100整除的年份、或者可被 400整除的年份均为闰年。思考:利用元年元月元日(即 1年 1月 1日)是星期一的已知事实,可对程序进行改造,让用户仅输入一个表示日期的年月日,则程序就应计算出那一天是星期几。主程序中输入一个年份以及该年的 1月 1日是星期几,而后任意指定某一天(再输入该年的任意一个月份日期)【第 4 页 共 4 页】14、编一个返回真假值(布尔值)的函数 p,其函数原型为:bool p(int x);具有如下功能:若正整数 x的各位数字之积等于 x2

14、-10x-22的话,返回 true,否则返 false。并编主函数,通过调用 p,找出 1000以内的满足上述关系的所有 x。15、编写具有如下原型的函数:bool f(long x); 其功能为:若整数 x仅由偶数字(0、2、4、6、8)组成时(如 x=26480) ,函数返回 true,否则返回 false(如当 x=22034时) 。并编制主函数对它进行调用。16、输入两个二进制正整数(两个非“0”即“1”的字符串) ,而后输入一个运算符(“+” 、 “-”、 “*”、 “/”) ,按 int型整数运算方式求出这两个二进制整数的运算结果并输出。提示:设计将 2进制数化为 10进制数、以及

15、将 10进制数化为 2进制数的函数“int Chg2To10(char a);” 和“ void Chg10To2(int n, char result);” ,而后在主函数中通过调用 Chg2To10先将两个输入串转化为 10进制数,而后对这两个 10进制数进行指定运算,再将运算结果通过 Chg10To2转化为 2进制数(结果在 result)而后输出。17、编写一个将 x进制正整数化为 10进制数并输出结果的函数,具有如下原型:void ChgxTo10(char a, int x);参数 a中放的是 x进制正整数的各位数字字符(如 x可为 2或 8或 16等) ,要将其化为 10进制数并输出。并编写主函数对它进行调用以验证其正确性。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号