2016年计算机二级108套程序

上传人:豆浆 文档编号:33433820 上传时间:2018-02-15 格式:DOCX 页数:47 大小:98.61KB
返回 下载 相关 举报
2016年计算机二级108套程序_第1页
第1页 / 共47页
2016年计算机二级108套程序_第2页
第2页 / 共47页
2016年计算机二级108套程序_第3页
第3页 / 共47页
2016年计算机二级108套程序_第4页
第4页 / 共47页
2016年计算机二级108套程序_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《2016年计算机二级108套程序》由会员分享,可在线阅读,更多相关《2016年计算机二级108套程序(47页珍藏版)》请在金锄头文库上搜索。

1、操作题1 套请编写函数 fun,其功能是:找出 2M 整型二维数组中最大元素的值,并将此值返回调用函数。int fun (int aM)int i,j,max=a00;for(i=0;i=eps) /*当某项大于精度要求时,继续求下一项 */s1=s1*n/(2*n+1); /*求多项式的每一项*/s=s+s1; /*求和*/n+;return 2*s;3 套编写函数 fun,其功能是:求出 11000 之间能被 7 或 11 整除,但不能同时被 7 和 11 整除的所有整数,并将其放在 a 所指的数组中,通过 n 返回这些数的个数。void fun (int *a, int *n)int i

2、,j=0;for(i=1;iave=0.0;for(i=0;iave=a-ave+a-si; /*求各门成绩的总和*/a-ave/=N; /*求平均分*/7 套N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun,其功能是:求出平均分,并由函数值返回。例如,若学生的成绩是:8576698591726487,则平均分应当是:78.625。double fun( STREC *h )double ave=0.0;STREC *p=h-next;while(p!=NULL) ave=ave+p-s; p=p-next;return ave/N;8 套编写函数f

3、un,其功能是:将所有大于 1小于整数m的非素数存入xx所指数组中,非素数的个数通过k返回。例如,若输入17,则应输出:46891012141516。void fun( int m, int *k, int xx )int i,j,n=0;for(i=4;i=a&*ttshanghai(为回车键),函数将返回shanghai。char *fun ( char *s, char *t)int i,j;for(i=0;si!= 0;i+); /*求字符串的长度*/for(j=0;tj!= 0;j+);if(iai.s) min=ai.s; /*找出最小值*/for(i=0;is;while(h!=

4、NULL) /*通过循环找到最高分数*/if(maxs) max=h-s; h=h-next;return max;31 套请编写函数fun,其功能是:找出一维整型数组元素中最大的值及其所在的下标,并通过形参传回。数组元素中的值已在主函数中赋予。主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。void fun(int a,int n, int *max, int *d)int i;*max=a0;*d=0;for(i=0;in) /*如果 k 大于 n,则使 p 的前部保留 n 个星号,其后的字符依次存入数组 a 中*/ while(*p) ai=

5、*(p+k-n);i+;p+;ai=0; /*在字符串最后加上结束标识位*/ 46 套编写函数fun,其功能是:将两个两位数的正整数 a、b合并成一个整数放在 c中。合并的方式是:将a 数的十位和个位数依次在c数的个位和百位上,b数的十位和个位数依次放在c数的十位和千位上。例如,当a45,b12时,调用该函数后c2514。邓安琪 2016/3/23 19:36:15void fun(int a, int b, long *c)*c=a/10+(b/10)*10+(a%10)*100+(b%10)*1000; 47 套请编写函数fun,其功能是:将一个数字字符串转换为一个整数( 不得调用C 语言

6、提供的将字符串转换为整数的函数) 。例如,若输入字符串 1234,则函数把它转换为整数值1234。long fun ( char *p)long n=0;int flag=1;if(*p=-) /*负数时置 flag 为1*/p+;flag= -1;else if(*p=+) /*正数时置 flag 为 1*/p+;while(*p!=0) n=n*10+*p-0; /*将字符串转成相应的整数*/p+;return n*flag; 48 套编写函数fun,其功能是:求 Fibonacci数列中大于t的最小的数,结果由函数返回。Fibonacci数列F(n)的定义为:F(0)0,F(1)1F(n

7、)F(n1)F(n2)例如,当t1000时,函数值为 1597。int fun( int t)int f0 = 0, f1 = 1, f ;do f = f0 + f1 ;f0 = f1 ;f1 = f ; while(f =a 51 套编写函数fun,其功能是:将a、b两个两位正整数合并成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的千位和十位上,b中的十位和个位数依次放在变量c的个位和百位上。例如,当a=45,b=12,调用该函数后c=4251。void fun(int a, int b, long *c) /*b%10 获取 b 的个位,a/10 获取 a 的十

8、位,a%10 获取 a 的个位,b/10 获取 b 的十位*/*c=b/10+(a%10)*10+(b%10)*100+(a/10)*1000; 52 套规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:使字符串中尾部的*号不多于n个,若多于n个,则删除多余的*号;若少于或等于n个,则不做任何操作,字符串中间和前面的*号不删除。例如,字符串中的内容为*A*BC*DEF*G*,若n的值为4,删除后,字符串中的内容应为*A*BC*DEF*G*;若n的值为7,则字符串中的内容仍为*A*BC*DEF*G*。n的值在主函数中输入。编写函数时,不得使用C语言提供的字符串函数。void fun

9、( char *a,int n )int i=0,k=0;char *p, *t;p=t=a; /*将指针移动到字符串末尾*/while(*t)t+;t-; /*从后往前如果是* 则使 k,找到最后一个*所在的位置,并记录*的个数*/while(*t=*)/*指针 t 指向前一个,同时标量 k 增加一*/k+;t-;if(kn)while(*p&p=l&ai.ssmax) /*如果各列中的元素比最大值大,则将这个更大的元素看作当前该列中最大元素*/max=ttij;ppj=max; /*将各列的最大值依次放入 pp 数组中*/ 61 套编写函数fun,w是一个大于10的无符号整数,若w是n(n

10、 2)位的整数,则函数求出w的后n1位的数作为函数值返回。例如,w值为5923,则函数返回 923;若w 值为923,则函数返回 23。unsigned fun(unsigned w)int n=1,j,s=1;unsigned t;t=w;/*首先确定 w 的位数,用变量 n 保存*/while(t=10)/*每次循环使 s 的位数减 1,同时 n 加 1*/t=t/10;n+;/*求 10 的 n-1 次方*/for(j=1;j=1e-6);return sum; 69 套请编写函数fun,其功能是:计算并输出给定 10个数的方差。1020.5()/1xSX其中: 10()/x例如,给定的

11、10个数为95.0、89.0、76.0、65.0、88.0、72.0、85.0、81.0、90.0、56.0,则输出为S11.730729。double fun(double x10)double x1=0.0,s=0.0;int i;for(i=0;i=k+1)s+=sqrt(m);return s; 75 套请编写函数fun,该函数的功能是:计算并输出S1(1 2 0.5)(12 0.53 0.5)(12 0.53 0.5n 0.5)的值。例如,若主函数从键盘给n输入20后,则输出为S534.188884。double fun(int n)int i;double s=0.0,s1=0.0

12、;for(i=1;isai.s)*s=ai; 78 套下列程序定义了NN的二维数组,并在主函数中自动赋值。请编写函数fun(int a N,int m),该函数的功能是使数组右上半三角元素中的值乘以 m。例如,若m的值为2,a 数组中的值为:197238456a则返回主程序后a数组中的值应为:218465邓安琪 2016/3/23 19:50:42void fun(int aN, int m)int i,j;for(j=0;j=i) aak+=i; /*将求出的素数放入数组 aa 中*/return k; /*返回所求出的素数的个数*/ 84 套编写一个函数,其功能是:从传入的num 个字符中

13、找出最长的一个字符串,并通过形参指针max传回该串地址( 用*作为结束输入的标识) 。char *fun(char (*a)81, int num, char *max)int i=0;max=a0;for(i=0;i=a&ssi=i) /*如果是素数,放入数组 xx 中*/xxn+=i;94 套请编写一个函数int fun(int *s,int t,int *k),用来求出数组的最大元素在数组中的下标并存放在k所指向的存储单元中。例如,输入如下整数:876 675 896 101 301 401 980 431 451 777则输出结果为 6,980。int fun(int *s,int t

14、,int *k)int i;*k=0; /*k 所指的数是数组的下标值*/for(i=0;in 。!()mpn例如:m12,n8时,运行结果为 495.000000。long jc(int m)long s=1;int i ;for(i=1;i=100) b10+; /*如果年龄大于等于100,b10自增1*/else bai/10+; /*如果年龄小于100,则将其分别统计到bai/10中*/double rnd()static t=29,c=217,m=1024,r=0;r=(r*t+c)%m; return(double)r/m);101套请编写函数fun,其功能是:统计 s所指字符串中的数字字符个数,并作为函数值返回。例如,s所指字符串中的内容是:2def35adh25 3kjsdf 7/kj8655x, 函数fun返回值为: 11int fun(char *s) int n=0;char *p;for(p=s;*p!=0;p+)if(*p=0)&(*p2) 。例如,若输入9.9 8.5 7.6 8.5 9.3 9.5 8.9 7.

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

当前位置:首页 > 医学/心理学 > 综合/其它

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