请编写函数fun

请编写函数fun
请编写函数fun

计算机二级C语言上机真题(96)【附详解】

作者:admin 发布时间:2012-02-08 15:29 来源:C语言中文网人围观

分享到:QQ空间新浪微博人人网腾讯微博豆瓣12

【真题1】下列给定程序中,函数fun()的功能是:求整数x 的y 次方的低3 位值。例如,整数5 的6 次方为15625,此值的低3 位值为625。试题程序:

___1__< stdio.h >

long fun(int x, int y, long *p)

{ int i;

long t=1;

for(i=1;__2__;i++)

t=t*x;

*p=t;

__3___;

return t;

}

main()

{ long t, r; int x, y;

printf("\nInput x and y: "); scanf("%1d%1d",&x,&y);

t=fun(x,y,&r);

printf("\n\nx=%d, y=%d,r=%ld, last=%ld\n\n ",x, y,

r,t);

}

(2011年2月)

解析:填空1:由C语言的学习我们知道这里是一个头文件的定义,定义头文

件要用关键字include,而且要用"#"开头。

填空2:这里考查的是循环结束判断语句。由题意知,这个循环是计算x的y

次幂的,而i从1 开始,要计算y次,当然就要让i自加y次,于是这里用"< =",而不是"< " 。

填空3:题目的意思是求幂的最后3 位数字,而求一个十进制数的后几位的最

常用的办法莫过于使用对其取余的操作。

答案:【1】#include 【2】i< =y 【3】t=t%1000;

【真题2】给定程序modi.c 中函数fun 的功能是:求广义菲玻那级数的第n 项。1,1,1,3,5,9,17,31,……项值通过函数值返回main( )函数。例如,若n = 15,则应输出:2209。请改正函数fun 中的语法错误,使它能计算出正确的结果。注意:不要改动main 函数,

#include < conio.h >

#include < stdio.h >

long fun ( int n )

{ long a=1, b=1, c=1, d=1, k;

/************found************/

for (k=4,k< =n,k++)

{ d = a+b+c;

/************found************/

a=b,b=c,c=d

}

return d;

}

main( )

{ int n = 15;

clrscr( );

printf( "The value is: %ld\n", fun ( n ) );

}

(2011年2月)

解析:本题的考核点是C语言的一些基本用法。

"for(k=4,k< =n,k++) "应改为"for(k=4;k< =n;k++) "。C 语言规定:每

个语句和数据定义的最后必须有一个分号。分号是C语句的必要组成部分。因此,"a=b,b=c,c=d "应改为"a=b;b=c;c=d;"或相同作用的语句。

【真题3】编写函数fun,它的功能是:求Fibonacci 数列中大于s的最小的一个数,结果由函数返回。其中Fibonacci 数列F(n)的定义为:F(0)=0,F(1)=1

F(n)=F(n-1)+F(n-2) 例如:当s = 1000 时,函数值为:1597。注意:部分

源程序存在文件prog.c 中。请勿改动主函数main 和其它函数中的任何内容,仅在函数fun 的花括号中填入你编写的若干语句。

#include < conio.h >

#include < math.h >

#include < stdio.h >

int fun( int s)

{……}

main() /* 主函数*/

{ int n;

clrscr(); n=1000;

printf("n = %d, f = %d\n",n, fun(n)); }

(2011年2月)

解析:本题的考核点是循环语句的应用。提示思路:在Fibonacci 数列中,每

一项的值都是前两项之和。设置一个中间变量f2,用来置放推出的最小数,所

以可以用递推法求出大于s 的最小的一个数。/*Fibonacci 数列是这么一个数

列0,1,1,2,3,5,8,13……从它的第三项开始每一项的值都是其紧接着

的前两项的和。本也是采用函数的嵌套调用来完成,但若用嵌套调用方式会较

难理解。它要求求出比s 大的最小一个数。在本题的编程中采用的是

while(f2< =s)当它的条件这假时,即得到了第一个比t大的数。*/

int fun (int s)

{int f1=0,f2=1,temp;

while(f2< =s)

{ temp=f2;

f2=f1+f2;

f1=temp; }

return f2;

}


本文来自【C语言中文网】:https://www.360docs.net/doc/148768280.html,/cpp/html/630.html

请编写函数fun,其功能是:计算并输出

S=1+(1+2^0.5)+(1+2^0.5+3^0.5)+……+(1+2^0.5+3^0.5+……+n^0.5)

例如,在主函数中从键盘给n 输入20 后,输出为:s=534.188884。注意:要求

n 的值大于1 但不大于100。部分源程序在文件prog.c中。请勿改动主函数

main 和其他函数中的任何内容,仅在函数fun 的花括号中填入你编写的若干语句。

#include < math.h >

#include < stdio.h >

double fun(int n)

{……}

main()

{ int n; double s;

printf("\n\nInput n: "); scanf("%d",&n);

s=fun(n);

printf("\n\ns=%f\n\n",s);

}

(2011年2月)

解析:本题的考核点是c 语言中的基本算法和sqrt()函数的使用。解题思路:

本题要求计算并输出多项式的值,通式为:1+2^0.5+3^0.5+……+n^0.5,

在给出的参考程序中,由于函数的返回值为双精度型,所以定义变量fac、sum

为双精度型,再使用sqrt()函数求出每一个多项式的值,最后通过sum+=fac;

计算出所有多项式之和,最终返回。

#include < math.h >

#include < stdio.h >

double fun(int n)

{int i; /*定义一个整形变量*/

double fac=1.0; /*定义变量fac、sum 为双精度型*/

double sum=1.0;

if (n >1&&n< =100)

for(i=2;i< =n;i++)

{fac+=sqrt(i); /*使用sqrt()函数求出每一个多项式的值*/

sum+=fac; /*通过sum+=fac;计算出所有多项式之和*/

}

return sum; }


本文来自【C语言中文网】:https://www.360docs.net/doc/148768280.html,/cpp/html/632.html

【真题1】给定程序中,函数fun()的功能是:求输入的两个数中较小的数。例如:输入5 10,结果为min is 5。请改正fun()程序中的错误,使它能得出正确的结果。试题程序:

#include < stdio.h >

#include< conio.h >

int fun(int x,___1___)

{ int z;

z=x< y__2__x:y;

return(z);

}

main()

{int a,b,c;

scanf("%d,%d\n",__3___);

c=fun(a,b);

printf("min is %d",c);

}

(2011年2月)

解析:填空1:根据题目的意思,这里应该是子函数的参数声明部分,C语言

中规定,在函数的形参中不允许出现int x,y 之类的语句,必须指定每一个参

数的类型,所以不能直接写y。

填空2:根据题目的意思,此处是使用三目运算符"?"比较两个数的大小,使用

规则是如果运算符前面的表达式中哪个变量成立,则整个式子就取运算符后面

的哪个变量。

填空3:由算法可以看出,此处是输入变量a和b的值,因为使用了scanf函

数,所以应该使用符号"&",注意两个变量之间的","不能省略。

答案:【1】int y 【2】? 【3】&a,&b

【真题2】下列给定程序中函数fun()的功能是计算1/n!的值。例如:给n 输入5,则输出0.008333。请改正程序中的错误,使它能得到正确结果。注意:不要改动main 函数,不得增行或删行,也不得更改程序的结构。试题程序:

#include < stdio.h >

#include < conio.h >

/**********************found***********************/

int fun(int n)

{ double result =1.0;

if(n==0)

return 1.0;

while(n >1 && n < 170)

/**********************found***********************/

result *=n++ ;

result=1/result;

return result;

main()

{

int n;

printf("Input N:");

scanf("%d",&n);

printf("\n1/%d!=%lf\n",n,fun(n));

}

(2011年2月)

解析:(1)错误:int fun(int n) 正确:double fun(int n)

(2)错误:result *=n++ ; 正确:result *=n-- ;

错误1:函数的返回值为实型数据,所以函数的返回类型应为double。

错误2:根据阶乘的概念,从n 开始,每递减1的数相乘,直到1,因此此处n

递减,而不是递增。

【真题3】请编写一个函数int fun(int x),它的功能是:判断整数x 是否是同构

数。若是同构数,函数返回1;否则返回0。所谓“同构数”是指这样的数,它出现在它的平方数的右边。例如:输入整数5,5的平方数是25,5 是25 中右侧的数,

所以5 是同构数。x 的值由主函数从键盘读入,要求不大于100。注意:部分源程序存在文件prog.c 中。请勿改动主函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入你编写的若干语句。

#include < conio.h >

#include < stdio.h >

int fun(int x)

{……}

main()

{ int x,y;

clrscr();

printf("\nPlease enter a integer

numbers:");scanf("%d",&x);

if(x >100){printf("data error !\n");exit(0);}

y=fun(x);

if (y) printf("%d YES\n",x);

else printf("%d NO!\n",x);

}

(2011年2月)

解析:本题的考核点是C语言中的数字运算。根据同构数的定义,小于10 的

同构数的平方减同构数本身与10 取模结果一定为0,同样位于10 和100之间

的同构数的平方减同构数本身与100 取模结果也一定为0。我们只需将取模的

结果取反,就可以在是同构数时返回1,在非同构数时返回0。

int fun ( int x )

{ if (x < 10)

return !((x * x - x) % 10);/*假如x 的平方减去x 除10

的余数为0 时,则函数返回1*/

else

return !((x * x - x) % 100); }

【真题1】下列给定程序中,函数fun()的功能是:通过某种方式实现两个变量值的交换,规定不允许增加语句和表达式。例如变量a初值为8,b 初值为3,程序运行后a 中的值为3,b 中的值为8。试题程序:

#include < conio.h >

#include < stdio.h >

int fun(int *x,int y)

{ __1___ t;

t=*x;*x=y;

return(t)__2__

}

main()

{int a=3,b=8;

printf("%d %d\n ",a,b);

b=fun(__3__,b);

printf("%d %d\n ",a,b);

}

(2011年2月)

解析:填空1:根据题目的意思,这里应该是声名一个新的变量t,由后面的赋

值语句以及返回语句可以明白这个变量应该是整型的(因为函数的返回值类型

是int)。

填空2:根据题目的意思,此处是子函数的返回语句,由C 语言的知识,每个

语句的结尾都应该使用";" 。

填空3:fun()函数的调用方式说明fun()函数的参数应当为指针类型,即应该

把变量的地址作为参数传递(符号"&"是取地址操作)。

答案:【1】int 【2】; 【3】&a

【真题2】给定程序modi.c 中函数fun的功能是:求两个形参的乘积和商数,并通过形参返回调用程序。例如输入:61.82 和12.65,输出为:c =

782.023000 d = 4.886957。请改正fun 函数中的错误,使它能得出正确的结

果。注意:不要改动main 函数,

#include < stdio.h >

#include < conio.h >

/**********found**********/

void fun ( double a, b, double x,y )

{/**********found**********/

x = a * b; y = a / b;

}

main ( )

{ double a, b, c, d;

clrscr( );

printf ( "Enter a , b : ");

scanf ( "%lf%lf", &a, &b );

fun ( a , b, &c, &d ) ;

printf (" c = %f d = %f\n ", c, d );

解析:本题的考核点是C语言中函数的入口参数和指针的使用。

函数的参数表是由逗号分隔的变量表,变量表由变量类型和变量名组成,与普

通的变量说明不同,函数参数必须同时具有变量类型和变量名,因此应该把程

序中"void fun ( double a, b, double x,y )"语句改为"void fun ( double a,

double b, double *x, double *y )"或相同作用的语句。

从主函数里的" fun ( a , b, &c, &d ) ; "语句可以看出,fun 函数后两个参数

应为长浮点型数据的指针,因此应该把程序中"x = a * b; y = a / b;"语句改

为"*x = a * b; *y = a / b;"或相同作用的语句。

【真题3】请编一个函数float fun(double h),函数的功能是对变量h中的值保留

2 位小数,并对第三位进行四舍五入(规定h 中的值为正数)。例如:h 值为

8.32433,则函数返回8.32;h 值为8.32533,则函数返回8.33。注意:部分

源程序存在文件prog.c 中。请勿改动主函数main 和其他函数中的任何内容,仅在

函数fun 的花括号中填入你编写的若干语句。

#include < stdio.h >

#include < conio.h >

float fun(float h)

{……}

main()

{ float a;

clrscr();

printf("Enter a: ");scanf("%f",&a);

printf("The original data is: ");

printf("%f \n\n",a);

printf("The result: %f\n",fun(a));}

解析:本题的考核点是类型转换与小数四舍五入的算法。提示思路:先将原数

值加上要保留位上的位权值的一半,再除以要保留位上的位权值,通过类型的

转换将要舍去部分去掉,最后再通过类型转换将其转换为最终结果。

float fun ( float h )

{ long num;

h=h+0.005;

h=h*100;

num=h; /*对h 求整*/

h=num;

h=h/100;

return h; }


本文来自【C语言中文网】:https://www.360docs.net/doc/148768280.html,/cpp/html/631.html

1请编写一个函数fun,它的功能是:比较两个字符串的长度,(不得

1.请编写一个函数fun,它的功能是:比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。例如,输入:beijing shanghai(为回车键),函数将返回shanghai。 #include char *fun ( char *s, char *t) { } main( ) { char a[20],b[10],*p,*q; int i; printf("Input 1th string:") ; gets( a); printf("Input 2th string:") ; gets( b); printf("%s\n",fun (a, b )); } 2.请编写一个函数fun,它的功能是:比较两个字符串的大小,(不得调用C语言提供的字符串比较函数strcmp()),函数返回较大的字符串。若两个字符串相同,则返回第一个字符串。例如,输入:abc abd,函数将返回abd。 #include char *fun ( char *s, char *t) { } main( ) { char a[20],b[10],*p,*q; int i; printf("Input 1th string:") ; gets( a); printf("Input 2th string:") ; gets( b); printf("%s\n",fun (a, b )); } 3. 程序填空题。在【】处填上适当语句,使程序能运行得到正确结果。给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。ss 所指字符串数组中共有N个字符串,且串长小于M 。 #include #include #define N 5 #define M 8 void fun(char (*ss)[M])

编程题目

1. m 个人的成绩存在score 数组中,请编写函数fun,将低于平均数人数作为函数值返回,将低于平均分 的分数放在below 所指的数组为:10、20、30、40。 2. 将M 行N 列的二位数组中的数据,按行的顺序依次放在一维数组中,一维数组中数据的个数存放在 形参n 所指的存储单元中。 3. 编写函数void fun(char*tt,int x,int pp[ ]), 它的功能是:求出能整除x 且不能偶数的各整数,并按从小 到大的顺序放在pp 所指的数组中,这些除数的个数通过形参n 返回。例如,若x 中的值为:30,则有4个数符合要求,它们是1,3,5,15。 4. 编写一个函数void fun (char*tt m,int k,int xx[]),统计在tt 字符串中’a ’到’z ‘26字母各自出现的次数, 并依次放在pp 所指数组中。 5. 请编写一个函数void fun (int m ,int k ,int xx[]),该函数的功能是:将大于整数m 且紧靠m 的k 个素存 入xx 所指的数组中。 6. 请编写一个涵数void fun (char a [ ],char b [ ] ,int n ),其功能是:删除一个字符串中指定下标的字符。 其中,a 指向原字符串,删除后的字符串存放在b 所指的数组中,n 在存放指定的下标。 7. 请编写一个函数int fun (int *s,int t,int *k)用来求出数组的最大元数在数组中的下标,并存放在k 所指 的存储单元中。 8. 编写涵数fun ,涵数的功能是:根椐以下公式计算s ,计算结果作为函数值返回;n 通过形参传入。 n s +++++++++++= (3211) (3211) 211 1 9. 编写函数fun ,它的功能是:要据以下公式求p 的值,结果由函数的值带回。m 与n 为两个整数且求 m>n p=)!(!! n m n m - 10. 编写函数fun,它的功能是:利用以下所示的简单迭代方法求方程cos(x)-x=0的一个实根。 x x n n cos(1=+) 11. 下列程序定义了N ×N 的二维数组中,并在主函数中自动值。请编写函数fun(int a [][N],该函数的功 能是:使数组在左下半三角元素的值会全部置成0。 12. 下列程序定义了N+N 的二维数组,并在主函数中赋值。请编写函数fun ,函数的功能是:求出数组 周边元素平均值并作为函数值返回给主函数中的s. 13. 请编写一个函数void fun (int tt [M][N],int pp [N]), tt 提向一个M 行N 列的二维数组,求出二维组每 列中最小元素,并依次放放pp 所指一维数组中。二维数组中的数已在主函数中赋予。 14. 请编写函数fun,函数的功能是求二维数组周边元素之和,作为函数值返回。二维数组中的值在主函 中赋予。 15. 请编写一个函数unsigned fun (unsigned w),w 是上个大于10的无符号整数,若w 是n (n ≥2)位的 整数,则函数求出w 的后n-1位的数作为函数值返回。 16. 请编写一个函数float fun (double h),函数的功能是对变量h 中的值保留2位小数,并对第三位进行四 舍五入(规定h 在的值为正数)。 17. 请编写一个函数fun (char*s),该函数的功能是把字符串中的内容逆置。 18. 编写程序,实现矩阵(3行列)的转置(即行列互换) 19. 编写函数fun, 该函数的功能是:从字符串中删除指定的字符。同一字母的大、小写按不同字符处理。 20. 编写函数int fun (int ,int aa [MAX]),该函数的功能是求出小于或等于lim 的所有素数并放在aa 数组 中,该函数返回所求出素数的个数。 21. 请编写函数fun ,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCII 码降序 排列。 22. N 名学生的成绩已在成绩主函数中放入一个带头节点的链表结构中,h 指向链表的头节点。请编写 函数fun,它的功能是:找出学生的最高分,由函数返回。 23. 请编写函数fun ,该函数的功能是:判断字符串是否为回文?若是则函数返回1,主函数中输出TES , 否则返回0,主函数中输出NO 。回文是指顺读和倒读都有一样的字符串。

请编写函数fun

计算机二级C语言上机真题(96)【附详解】 作者:admin 发布时间:2012-02-08 15:29 来源:C语言中文网人围观 分享到:QQ空间新浪微博人人网腾讯微博豆瓣12 【真题1】下列给定程序中,函数fun()的功能是:求整数x 的y 次方的低3 位值。例如,整数5 的6 次方为15625,此值的低3 位值为625。试题程序: ___1__< stdio.h > long fun(int x, int y, long *p) { int i; long t=1; for(i=1;__2__;i++) t=t*x; *p=t; __3___; return t; } main() { long t, r; int x, y; printf("\nInput x and y: "); scanf("%1d%1d",&x,&y); t=fun(x,y,&r); printf("\n\nx=%d, y=%d,r=%ld, last=%ld\n\n ",x, y, r,t); } (2011年2月) 解析:填空1:由C语言的学习我们知道这里是一个头文件的定义,定义头文 件要用关键字include,而且要用"#"开头。 填空2:这里考查的是循环结束判断语句。由题意知,这个循环是计算x的y 次幂的,而i从1 开始,要计算y次,当然就要让i自加y次,于是这里用"< =",而不是"< " 。 填空3:题目的意思是求幂的最后3 位数字,而求一个十进制数的后几位的最 常用的办法莫过于使用对其取余的操作。 答案:【1】#include 【2】i< =y 【3】t=t%1000; 【真题2】给定程序modi.c 中函数fun 的功能是:求广义菲玻那级数的第n 项。1,1,1,3,5,9,17,31,……项值通过函数值返回main( )函数。例如,若n = 15,则应输出:2209。请改正函数fun 中的语法错误,使它能计算出正确的结果。注意:不要改动main 函数, #include < conio.h > #include < stdio.h > long fun ( int n ) { long a=1, b=1, c=1, d=1, k; /************found************/ for (k=4,k< =n,k++) { d = a+b+c; /************found************/

请编一个函数fun

请编一个函数fun,它的功能是:根据以下公式求π的值(要求满足精度0.0005,即,某项小于0.0005时停止迭代): 程序运行后,如果输入精度0.0005,则程序输出多少。 注意:部分源程序存在PROG1.C中,请勿改动主函数和其他函数中的内容,仅在函数fun的指定的部位填入你编写的若干语句。 试题源程序如下: #include <stdio.h> #include <math.h> double fun(double eps) { } main() { double x; printf("Input eps:"); scanf("%lf",&x); printf("\neps=%lf, PI=%lf\n",x,fun(x)); } 分析: (1)本题所用基本算法应为累加。假设累加值放在变量s中,累加项放在变量t中,累加操作由语句s=s+t;来实现。 (2)若称为第1累加项,则其前的1为第0累加项,其后的一项为第2累加项,按给定的公式可知,从第1累加项开始,后一项的累加项是前一项的值乘以。所以当前的累加项应当是:t=t*n/(2.0*n+1.0)。表达式右边的t中是前一项的值,表达式左边的t为当前的每累加累加项。请注意,不要写成:t*n/(2*n+1)而进行整除。 (3)若第0累加项的1作为s的初值,语句:s=s+t;执行n次,就把第1到第n项累加到了s中。每进行一次累加,n值增1。 (4)把以上操作放在循环中。按本题规定,当某项小于eps(0.0005)时停止迭代,因此若用while循环,可用t>=eps作为控制循环进行的条件:while( t>=eps ){ s+=t; n++; t=t*n/(2.0*n+1); } (5)注意应给所用变量赋适当的初值。 (6)退出循环后,函数的返回值应是:2*s。 请编一个函数fun,其中n所指存储单元中存放了数组中元素的个数。函数的功能是:删除所有值为y的元素。已在主函数中给数组元素赋值,y的值由主函数通过键盘读入。 注意:部分源程序存在PROG1.C中,请勿改动主函数和其他函数中的内容,仅在函数fun的指定的部位填入你编写的若干语句。 试题源程序如下: #include <stdio.h> #define M 20 void fun(int bb[],int *n, int y) { }

请编写一个函数fun

试题1 请编写一个函数fun,它的功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c 数的千位和十位上,b数的十位和个位数分别放在c数的个位和百位上。例如;当a=45,b=12,调用该函数后c=4251。函数形式void fun(int a,int b,long *c)。并写主函数验证,a,b两数从键盘输入。 #include void fun(int a,int b,long *c){ } void main() { int a,b; long c; printf(“Input a,b:”); scanf(“%d%d”,&a,&b); 此处函数调用,请填空; printf(“The result is:%d”,c); } 试题2 编写函数int f(int lim,int aa[ ]),该函数的功能是求出小于或等于1im的所有素数并放在aa数组中,该函数返回所求出的素数的个数。并写主函数验证。 #include #define MAX 100 int f(int lim,int aa[]){ } void main() { int limit,i,sum; int aa[MAX]; printf(“输入一个整数”); scanf(“%d”,&limit); 此处函数调用,请填空,用sum保存函数调用返回的结果; for(i=0;i

第01套 给定程序中,函数fun的功能

第01套给定程序中函数fun的功能是将形参n所指变量中各位上为偶数的数去除剩余的数按原来从高位到低位的顺序组成一个新的数并通过形参指针n传回所指变量。例如输入一个数27638496新的数为739。请在程序的下划线处填入正确的内容并把下划线删除使程序得出正确的结果。注意源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行也不得更改程序的结构给定源程序include ltstdio.hgt void fununsigned long n unsigned long x0 i int t i1 whilen tn __1__ ift2 __2__ xxti ii10 n n /10 n__3__ main unsigned long n-1 whilengt99999999nlt0 printfquotPlease input0ltnlt100000000: quot scanfquotldquotampn funampn printfquotnThe result is: ldnquotn 解题思路第一处t是通过取模的方式来得到n的个位数字所以应填10。第二处判断是否是奇数所以应填0。第三处最后通形参n来返回新数x 所以应填x。给定程序MODI1.C中函数fun 的功能是计算n。例如给n输入5则输出120.000000。请改正程序中的错误使程序能输出正确的结果。注意不要改动main函数不得增行或删行也不得更改程序的结构给定源程序include ltstdio.hgt double fun int n double result 1.0 if n 0 return 1.0 while n gt1 ampamp n lt 170 result n-- return result main int n printfquotInput N:quot scanfquotdquot ampn printfquotnnd lfnnquot n funn 解题思路第一处条件语句书写格式错误应

函数fun计算从1到10之间所有奇数之和并输出

函数fun计算从1到10之间所有奇数之和并输出 注意:部分源程序已经存在文件中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句,不得删除花括号中的原始注释。 #include int fun( int m) { /****/ /****/} main() { int n,s;void NONO(); n=10; s=fun(n); printf("奇数之和=%d\n",s); NONO(); } void NONO() { FILE *rf, *wf; int a; rf=fopen("d:\\programC\\1\\in.dat","r"); wf=fopen("d:\\programC\\1\\out.dat","w"); for(int i=0;i<5;i++) { fscanf(rf,"%d",&a); fprintf(wf,"%d\n",fun(a)); } fclose(rf); fclose(wf); } 编写一个函数,实现用 "气泡法" 对输入的10个整数按由小到大顺序排列 注意:部分源程序已经存在文件中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句,不得删除花括号中的原始注释。 #define N 10 #include"stdio.h" void sort(int a[ ],int n)

{ /****/ /****/} main( ) { int a[N],i; void NONO(); printf("Input %d numbers:\n", N ); for(i=0; i

4. 请编写函数fun计算如下数组中元素的平均值、最高分和最低分。并通过主函数输出平均分,最高分和最低分。

4.请编写函数fun计算如下数组中元素的平均值、最高分和最低分。并通过主函数输出平均分,最高分和最低分。 float arr[10]={85,86,95,78,85,63,45,75,66,100} include "stdio.h" void fun(float a[],int n,float *max,float *min) { int i; float j=a[0],k=a[0]; for(i=0;i=j) j=a[i]; if(a[i]<=k) k=a[i]; } *max=j; *min=k; } //最大值存在max指针指向的地址中,最小值存在min指针指向的地址中。void main() { float arr[10]={85,86,95,78,85,63,45,75,66,100}; float max=arr[0]; float min=arr[0]; fun(arr,10,&max,&min); printf("max=%f\nmin=%f\n",max,min); } 1.5请编写程序将字符串中内部的星号删掉。 比如:输入字符串*****ABC**DE*F***GHI****** 删除内部星号后,结果应为:*****ABCDEFGHI****** #include #include #include void fun (char *a) { char *p=a; while(*p=='*') { *a++=*p; p++;

} while(*p) { if(*p!='*') *a++=*p; p++; } *a='\0'; } void main() { char s[81]; FILE *out; printf("Enter a string :\n"); gets(s); fun(s); printf("The string after deleted:\n"); puts(s); out=fopen("out.dat","w"); strcpy(s,"****A*BC*DEF*G*******"); fun(s); fprintf(out,"%s",s); fclose(out); }

Matlab datafun 函数

版本:matlab 2010a Matlab datafun函数的相关用法 目录: 1.conv2 (2) 2.conv (3) 3.convn (4) 4.corrcoef (4) 5. cov (5) 6. cumprod (6) 7. cumsu (7) 8. deconv (7) 9. detrend (8) 10. diff (9) 11. fft2 (9) 12. fft (11) 13.fftshift (12) 14. filter2 (12) 15. filter (13) 16. hist (13) 17. histc (14) 18. ifft2 (16) 19. issorted (17) 20. max (19) 21. mean (20) 22. median (20) 23. min (21) 24. mode (22) 25. prod (23) 26. sort (24) 27. sortrows (26) 28. std (27) 29. sum (28) 30. var (30)

1.conv2 功能简介 进行二维卷积操作 使用方法 C=conv2(A,B) C=conv2(Hcol,Hrow,A) C=conv2(...,'shape') 说明:对于 C=conv2(A,B) ,conv2 的算矩阵 A 和 B 的卷积,若 [Ma,Na]=size(A), [Mb,Nb]=size(B), 则size(C)=[Ma+Mb-1,Na+Nb-1]; C=conv2(Hcol,Hrow,A) 中,矩阵 A 分别与 Hcol 向量在列方向和 Hrow 向量在行方向上进行卷积;C=conv2(...,'shape') 用来指定 conv2 返回二维卷积结果部分,参数 shape 可取值如下: 》full 为缺省值,返回二维卷积的全部结果; 》same 返回二维卷积结果中与 A 大小相同的中间部分; valid 返回在卷积过程中,未使用边缘补 0 部分进行计算的卷积结果部分,当size(A)>size(B) 时,size(C)=[Ma-Mb+1,Na-Nb+1]。 应用举例A=magic(5) A= 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 B=[1 2 1;0 2 0;3 1 3] B= 1 2 1 0 2 0 3 1 3 C=conv2(A,B) C= 17 58 66 34 32 38 15 23 85 88 35 67 76 16 55 149 117 163 159 135 67 79 78 160 161 187 129 51 23 82 153 199 205 108 75 30 68 135 168 91 84 9 33 65 126 85 104 15 27 相关函数 filter2

相关文档
最新文档