ImageVerifierCode 换一换
格式:DOCX , 页数:37 ,大小:25.60KB ,
资源ID:3851360      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3851360.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(机试练习54150套含答案.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

机试练习54150套含答案.docx

1、机试练习54150套含答案 第四十一套 请补充函数fun,该函数的功能是:判断一个数是否为素数。该数是素数时,函数返回字符串yes!,否则函数返回字符串no!,并在主函数中输出。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。 试题程序: #include #include #include 【1】 int I, m; m=1; for(I=【2】;I1) return(yes!); else return(no!); void main() int k=0; system(CLS); printf(Input:);

2、 scanf(%d,&k); printf(%sn,fun(k);【参考答案】 (1) char *fun(int n) (2) 2 (3) n%i=0或!(n%i) 下列给定程序中,函数fun的功能是:按顺序给s所指数组中的元素赋予从2开始的偶数,然后再按顺序对每5个元素求一个平均值,并将这些值依次存放在w所指的数组中。若s所指数组中元素的个数不是5的倍数,多余部分忽略不计。例如,s所指数组有14个元素,则只对前10个元素进行处理,不对最后的4个元素求平均值。 请改正函数fun中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #

3、include #define SIZE 20 fun (double *s,double *w) int k,i; double sum; for(k=2,i=0;iSIZE;i+) si=k;k+=2; sum=0.0; for(k=0,i=0;iSIZE;i+) sum+=si; /*found*/ if(i+1%5=0) wk=sum/5; sum=0;k+; return k; void main() double aSIZE,bSIZE/5; int i, k; k=fun(a,b); printf(The original data:n); for(i=0;iSIZE;i+) i

4、f(i%5=0) printf(n); printf(%4.0f,ai); printf(nnThe result:n); for(i=0;ik;i+) printf(%6.2f,bi); printf(nn);【参考答案】 (1)错误:if(i+1%5=0) 正确:if(i+1)%5=0) 程序定义了的二维数组,并在主函数中自动赋值。请编写函数fun(int aN,intn),该函数的功能是:使数组左下半三角元素中的值乘以n。例如,若n的值为3,a数组中的值为: 则返回主程序后a数组中的值应为: 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中

5、填入所编写的若干语句。 试题程序: #include #include #include #define N 5 void fun(int a N, int n) main() int aNN,n, i,j; FILE *out; printf(* The array *n); for(i=0; iN; i+) for(j=0; jN; j+) aij=rand()%10; printf(%4d, aij); printf(n); n=rand()%10; printf(n=%4dn,n); fun(a, n); printf(*THE RESULT*n); for(i=0; iN; i+)

6、for (j=0; jN; j+) printf(%4d,aij); printf(n); /*/ out=fopen(out.dat,w); for(i=0;iN;i+) for(j=0;jN;j+) aij=i*j+1; fun(a,9); for(i=0;iN;i+) for(j=0;jN;j+) fprintf(out,%4d,aij); fprintf(out,n); fclose(out); /*/【参考答案】 fun(int aN,int n) int i,j; for(i=0;iN;i+) for(j=0;j=i;j+) aij=aij*n; 第四十二套 给定程序中,函数fun

7、的功能是:在形参s所指字符串中的每个数字字符之后插入一个*号。 例如,形参s所指的字符串为:def35adh3kjsdf7。执行结果为:def3*5*adh3*kjsdf7*。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。 试题程序: #include void fun(char *s ) int i,j,n; for(i=0;si!=0;i+) if(si=0【1】sii;j-) sj+1=【3】; sj+1=*; i=i+1; main() char s60=ba3a54cd23a; printf(n the

8、original string is: %sn,s); fun(s); printf(nthe result is: %sn,s);【参考答案】 (1) & (2) 0 (3) sj或*(s+j) 下列给定程序中,函数fun的功能是:找出一个大于给定整数m且紧随m的素数,并作为函数值返回。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include #include #include int fun( int m) int I,k; for (I=m+1; ;I+) for (k=2;kI;k+) /*found

9、*/ if (I%k!=0) break; /*found*/ if (kI) return(I); void main() int n; system(CLS); printf(nPlease enter n: ); scanf(%d,&n); printf (%dn,fun(n); 【参考答案】 (1)错误:if(i%k!=0) 正确:if(i%k=0) (2)错误:if(k=i) 请编写函数void fun (int x, int pp, int *n),它的功能是:求出能整除x且不是偶数的各整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。 例如,若x中的值为

10、30,则有4个数符合要求,它们是1、3、5、15。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include #include #include void fun (int x, int pp, int *n) void main () FILE *wf; int x,aa1000, n, i ; system(CLS); printf(nPlease enter an integer number : n ) ; scanf (%d, &x) ; fun (x, aa, &n) ; for (i=0

11、; in ; i+) printf (%d , aa i); printf (n ) ; /*/ wf=fopen(out.dat,w); fun (30, aa, &n) ; for (i=0 ; in ; i+) fprintf (wf,%d , aa i); fclose(wf); /*/【参考答案】 void fun (int x, int pp, int *n) int i,j=0; for(i=1;ix;i=i+2) /*i的初始值为1,步长为2,确保i为奇数*/ if(x%i=0) /*将能整除x的数存入数组pp中*/ ppj+=i; *n=j; /*传回满足条件的数的个数*/

12、第四十三套 请补充函数fun,该函数的功能是:依次取出字符串中所有的小写字母以形成新的字符串,并取代原字符串。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。 试题程序: #include #include #include void fun(char *s) int I=0; char *p=s; while(【1】) if(*p=a&*p=z) sI=*p; 【2】; p+; sI=【3】; void main() char str80; system(CLS); printf(nEnter a string:)

13、; gets(str); printf(nnThe string is :%sn,str); fun(str); printf(nnThe string of changing is:%sn,str);【参考答案】 (1)*p (2) i+或+i或i+=1或i=i+1 (3)0 下列给定程序中,函数fun的功能是:计算并输出high以内最大的10个素数之和。high由主函数传给函数fun。例如high的值为100,则函数的值为732。 请改正程序中的错误,使程序能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include #include

14、 #include #include int fun(int high) int sum=0,n=0, j, yes; while(high=2)&(n10) yes = 1; for(j=2; j=high/2; j+) /*found*/ if(high%j=0) yes=0; break if(yes) sum+=high; n+; high-; return sum; void main() system(CLS); printf(%dn,fun(100);【参考答案】 (1)错误:break 正确:break; 请编写一个函数fun,它的功能是:根据以下公式求的值(要求满足精度0.0

15、05,即某项小于0.005时停止迭代)。 /2=1+1/3+1*2/(3*5)+1*2*3/(3*5*7)+1*2*3*4/(3*5*7*9)+1*2*3*n/(3*5*7*(2n+1) 程序运行后,如果输入精度0.0005,则程序输出3.14。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include #include #include double fun(double eps) void main() double x; FILE *wf; printf(Input eps: ); scanf(%

16、lf,&x); printf(neps=%1f,PI=%1fn,x,fun(x); /*/ wf=fopen(out.dat,w); fprintf (wf,%lf,fun(0.0005); fclose(wf); /*/【参考答案】 double fun(double eps) double s=1.0,s1=1.0; int n=1; while(s1=eps) /*当某项大于精度要求时,继续求下一项*/ s1=s1*n/(2*n+1); /*求多项式的每一项*/ s=s+s1;/*求和*/ n+; return 2*s; 第四十四套 从键盘输入一组小写字母,保存在字符数组str中。请补充

17、函数fun,该函数的功能是:把字符数组str中字符下标为奇数的小写字母转换成对应的大写字母,结果仍保存在原数组中。 例如,输入acegikm,则输出aCeGiKm。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。 试题程序: #include #include #define N 80 void fun (char s) int I=0; while (【1】) if(I%2!=0) sI-=【2】; 【3】; void main() char strN; system(CLS); printf(n Input a

18、string:n); gets(str); printf(n* original string *n); puts(str); fun(str); printf(n* new string *n); puts(str);【参考答案】 (1) si!=0或si(2) 32或a-A (3) i+ 下列给定程序中,函数fun的功能是:计算整数n的阶乘。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include #include double fun(int n) double result=1.0; while(n1

19、&n170) /*found*/ result*=-n; /*found*/ return; void main() int n; system(CLS); printf(Enter an integer: ); scanf(%d,&n); printf(nn%d!=%1gnn ,n,fun(n);【参考答案】 (1)错误:result*=-n; 正确:result*=n-; (2)错误:return; 正确:return result; 请编写函数fun,该函数的功能是:计算n门课程的平均分,计算结果作为函数值返回。 例如,有5门课程的成绩是90.5,72,80,61.5,55,则函数的值为

20、71.80。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include float fun (float *a, int n) void main() FILE *wf; float score30=90.5,72,80,61.5,55,aver; aver=fun(score,5); printf(nAverage score is: %5.2fn,aver); /*/ wf=fopen(out.dat,w); fprintf(wf,%5.2f,aver); fclose(wf); /*/【参考答案】

21、 float fun (float *a, int n) float av=0.0; int i; for(i=0;in;i+) /*求分数的总和*/ av=av+ai; return (av/n);/*返回平均值*/ 第四十五套 函数fun的功能是:逆置数组元素中的值。形参n给出数组中数据的个数。 例如,若a所指数组中的数据依次为:1、2、3、4、5、6、7、8、9,则逆置后为:9、8、7、6、5、4、3、2、1。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。 试题程序: #include void fun(in

22、t a,int n) int I,t; for(I=0;I【1】;I+) t=aI; ai=an-1-【2】; 【3】=t; main() int b9=1,2,3,4,5,6,7,8,9,i; printf(nthe original data :n); for(i=0;i9; i+) printf(%4d,bi); printf(n); fun(b,9); printf(nthe data after inbert:n); for(i=0;i9;i+) printf(%4d,bi); printf(n);【参考答案】 (1) n/2 (2) i (3) an-i-1 下列给定程序中,函数f

23、un的功能是:应用递归算法求某数a的平方根。求平方根的迭代公式如下: 例如,2的平方根为1.414214。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include #include /*found*/ fun(double a,double x0) double x1,y; x1=(x0+a/x0)/2.0; /*found*/ if(fabs(x1-x0)0.00001) y=fun(a,x1); else y=x1; return y; void main() double x; printf(Enter x: ); scanf(%lf,&x); printf(The square root of %lf is %1fn,x, fun(x,1.0); 【参考答案】 (1)错误:fun(double a,double x0) 正确:double fun(double a,double x0) (2)错误:if(fabs(x1-x0)0.00001) 正确:if(fabs(x1-x0)=0.00001) 请编写函数fun,该函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间有若干个空格隔开,一

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1