《2022年C语言函数练习 .pdf》由会员分享,可在线阅读,更多相关《2022年C语言函数练习 .pdf(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第 1 页 共 3 页第七章函数练习题一、选择题:【1】已知如下定义的函数:fun1(inta) printf(n%d,a);则该函数的数据类型是_。A) 与参数 a 的类型相同B) void 型C) 没有返回值D) 无法确定【2】若用数组名作为函数调用时的实参,则实际上传递给形参的是。A) 数组首地址B) 数组的第一个元素值C) 数组中全部元素的值D) 数组元素的个数【3】如果一个变量在整个程序运行期间都存在,但是仅在说明它的函数内是可见的,这个变量的存储类型应该被说明为_。A) 静态变量B) 动态变量C) 外部变量D) 内部变量【4】求一个角的正弦函数值的平方。能够实现此功能的函数是_。A
2、) sqofsina(floatx) return(sin(x)*sin(x); B) double sqofsinb(floatx) return(sin(double)x)*sin(double)x); C) double sqofsinc(x) return(sin(x)*sin(x);D) sqofsind(floatx) return(double(sin(x)*sin(x);【5】已知函数定义如下:floatfun1(intx,inty) floatz;z=(float)x/y;return(z); 主调函数中有 inta=1,b=0;可以正确调用此函数的语句是_。A) print
3、f(%f,fun1(a,b); B) printf(%f,fun1(&a,&b);C) printf(%f,fun1(*a,*b); D) 调用时发生错误二、程序填空题:【6】下面程序的功能是计算S= k!。k=0名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 3 页 - - - - - - - - - 第 2 页 共 3 页longfun(intn) inti ;longs;for(i=1;i ;i+)s*=i ;return( );intmain() intk,n ;
4、longs;scanf(%d,&n) ;s= ;for(k=0 ;k=n;k+)s+= ;printf(%ldn,s);return0;【7】下面程序的功能是显示具有n 个元素的数组 s 中的最大元素。#defineN 20intmain() inti,aN;for(i=0;iN;i+)scanf(%d,&ai);printf(%dn, );return0;fmax(ints,intn) intk,p ;for(p=0,k=p ;psk) ;return(k);【8】下面的程序是用递归算法求a 的平方根。求平方根的迭代公式如下:#includedouble mysqrt(double a, d
5、ouble x0 ) double x1,y;x1 = ;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 3 页 - - - - - - - - - 第 3 页 共 3 页if(fabs(x1-x0)0.00001)y = mysqrt( );elsey = x1;return(y );intmain() double x;printf(Enterx: ) ;scanf(%lf,&x);printf(Thesqrtof %lf=%lfn,x,mysqrt(x, 1.0);
6、return0;【9】下面的函数 sum(intn)完成计算 1n的累加和。sum(intn) if(n=0)printf(dataerrorn);if(n=1) ;else ;三、编程题:【10】A、B、C 、D 、E五人在某天夜里合伙去捕鱼,到第二天凌晨时都疲惫不堪,于是各自找地方睡觉。日上三竿,A第一个醒来,他将鱼分为五份,把多余的一条鱼扔掉,拿走自己的一份。B第二个醒来,也将鱼分为五份,把多余的一条鱼扔掉,拿走自己的一份。 C 、D 、E 依次醒来,也按同样的方法拿鱼。编写程序利用函数的递归调用求出他们合伙至少捕了多少条鱼。【11】如果一个正整数等于其各个数字的立方和,则称该数为阿姆斯
7、特朗数(亦称为自恋性数)。如 407=43+03+73就是一个阿姆斯特朗数。 编写一个函数, 判断一个正整数是否为阿姆斯特朗数,在主程序中调用此函数,求1000以内的所有阿姆斯特朗数。【12】输入 55 的数组,编写三个函数实现以下功能,然后编写主程序调用这三个函数:(1) 编写一个函数,求出对角线上各元素的和;(2) 编写一个函数,求出对角线上行、列下标均为偶数的各元素的积;(3) 编写一个函数,找出对角线上其值最大的元素和它在数组中的位置。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 3 页 - - - - - - - - -