机试练习4(31-40套含答案)
更新时间:2024-04-16 23:45:01 阅读量: 综合文库 文档下载
- 机试一般考什么推荐度:
- 相关推荐
第三十一套
请补充main函数,该函数的功能是:求n!。 例如,7!=5040。
注意:部分源程序给出如下。
请勿改动main函数和其他函数中的任何内容,仅在main函数的横线上填入所编写的若干表达式或语句。 试题程序:
#include
int I,n; long f=1; system(\ printf(\ scanf(\【1】); for(【2】;I<=n;I++)
【3】;
printf(\}
【参考答案】
(1) &n (2) i=1或i=2 (3) f*=i
下列给定程序中,函数fun的功能是:求表达式s=aa…aa-…-aa-aa-a(此处aa…aa表示n个a,a和n的值在1至9之间)的值。例如a=3,n=6,则以上表达式为: s=333333-33333-3333-333-33-3
其值是296298。a和n是函数fun的形参,表达式的值作为函数值传回main函数。 请改正程序中的错误,使它能计算出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include
/*************found**************/ long s=0,t=1;
/*************found**************/ for(j=0;j<=n;j++) t=t*10+a; s=t;
for(j=1;j /*************found**************/ t=t; s=s-t; } return(s); } main() { int a,n; printf(\ scanf(\ printf(\} 【参考答案】 (1)错误:long s=0,t=1; 正确:long s=0, t=0; (2)错误:for (j=0;j<=n;j++) 正确:for (j=0;j (3)错误:t=t; 正确:t=t/10; 第三十二套 请补允函数fun,该函数的功能是:计算并输出下列多项式的值。 例如,若主函数从键盘给n输入50后,则输出为S=1.960784。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填若干表达式或语句。 试题程序: #include { int i,j; double sum=0.0,t; for(i=1;i<=n;i++) { t=0.0; for(j=1;j<=i;j++) t+=【2】; sum+=【3】; } return sum; } void main() { int n; double s; printf(\ scanf(\ s=fun(n); printf(\} 【参考答案】 (1) double (2) j (3)1.0/t或(double)1/t 下列给定程序中,函数fun的功能是:根据整型形参m,计算如下公式的值。 例如,若m的值为5,则应输出:1.463611。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include /*************found**************/ for(i=2;i /*************found**************/ y+=1/(i*i); return (y); } void main() { int n=5; system(\ printf(\} 【参考答案】 (1)错误:for (i=2;i 第三十三套 程序的功能是计算。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在横线上填入所编写的若干表达式或语句。 试题程序: #include for(I=1;I<=n;I++) s=【2】; return s; } void main() { long s; int k,n; scanf(\ s=【3】; for(k=0;k<=n;k++) s=【4】; printf(\} 【参考答案】 (1) 1 (2) s*i或i*s (3) 0 (4) s+fun(k) 数列中,第一项为3,后一项都比前一项的值增5。下列给定程序中,函数fun的功能是:计算前项的累计和。在累加过程中把那些被4除后余2的当前累加值放入数组中,符合此条件的累加值的个数作为函数值返回主函数里。如当n的值为20时,该数列为3,8,13,18,23,28,…,93,98。符合此条件的累加值应为42,126,366,570,1010。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include int fun(int n, int *a) /*************found**************/ { int I,j,k,sum; sum=0; for(k=3,I=0;I /*************found**************/ if(sum%4=2) a[j++]=sum; } /*************found**************/ return j; } void main() {int a[N],d,n,i; printf(\ scanf(\ d=fun(n,a); printf(\ for(i=0;i printf(\} 【参考答案】 (1)错误:int i,j,k,sum; 正确:int i,j=0,k,sum; (2)错误:if(sum%4=2) 正确:if(sum%4==2) (3)错误:return j; 正确:return j++; 第三十四套 请补充main函数,该函数的功能是:求1+2!+3!+…+N!的和。 例如,1+2!+3!+…+5!+6!的和为873。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在main函数的横线上填入所编写的若干表达式或语句。 试题程序: #include int I, n; long s=0, t=1; system(\ printf(\ scanf(\【1】); for(I=1;I<=n;I++) { } printf(\} 【参考答案】 (1) &n (2) t*i (3) s+t 下列给定程序中,函数fun的功能是:求S的值。设 S=(22/(1*3))*(42/(3*5))*(62/(5*7))*…*(2k)2/((2k-1)*(2k+1)) 例如,当k为10时,函数的值应为1.533852。 请改正程序中的错误,使它能得出正确的结果。 t=【2】; s=【3】; 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include /*************found**************/ fun(int k) { int n; float s, w, p, q; n=1; s=1.0; while(n<=k) { w=2.0*n; p=w-1.0; q=w+1.0; s=s*w*w/p/q; n++; } /*************found**************/ return s } void main() { system(\ printf(\} 【参考答案】 (1)错误:fun(int k) 正确:double fun(int k) (2)错误:return s 第三十五套 给定程序的功能是:计算并输出下列级数的前N项之和SN,直到SN大于q为止,q的值通过形参传入。 例如,若q的值为50.0,则函数值为50.416687。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。 正确:return s; 试题程序: #include s=s+(double)(n+1)/n; 【2】; } printf(\ 【3】; } void main() { printf(\} 【参考答案】 (1)<= (2)n++或n+=1或n=n+1 (3)return s 或 return(s) 下列给定程序中,函数fun的功能是:给定n个实数,输出平均值,并统计平均值以上(含平 均 值 ) 的 实 数 个 数 。 例 如 , n=8 时 , 输 入 193.199,195.673,195.757,196.051,196.092,196.596,196.579,196.763,所得平均值为195.838745,在平均值以上的实数个数应为5。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include /*************found**************/ int j, c=0; float xa=0.0; for (j=0; j printf(\ for (j=0; j void main() { float x[100]={ 193.199,195.673,195.757,196.051,196.092,196.596,196.579,196.763}; system(\ printf(\} 【参考答案】 (1)错误:缺{ 正确:加{ 第三十六套 请在函数fun的横线上填写若干表达式,使从键盘上输入一个整数n,输出n对应的斐波拉契数列。斐波拉契数列是一整数数列,该数列自第三项开始,每数等于前面两数之和,即0,1,1,2,3,5,8,13,21,34,55,… 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。 试题程序: #include int i,n=0; scanf(\ for(i=0;i int fun(int n) printf(\ { if(【1】) return 0; else } 【参考答案】 (1) n==0 (2) n==1 (3) fun(n-1)+fun(n-2) 下列给定程序中,函数fun的功能是:根据整型形参n,计算如下公式的值。 A1=1,A2=1/(1+A1),A3=1/(1+A2),…,An=1/(1+A (n-1)) 例如,若n=10,则应输出0.617977。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include /*************found**************/ int fun(int n) { float A=1;int I; /*************found**************/ for(I=2;I void main() { int n; system(\ printf(\ scanf(\ printf(\ } if(【2】) return 1; else return 【3】 ; 【参考答案】 (1)错误:int fun(int n) 正确:float fun(int n) (2)错误:for(i=2;i 第三十七套 请补充函数fun,该函数的功能是:把从键盘输入的3个整数按从小到大输出。 例如,输入\结果输出\。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。 试题程序: #include int x,y,z,t; system(\ printf(\ scanf(\ if(【1】) { t=x; x=y; y=t; }/*交换x,y的值*/ if(【2】) { t=z; z=x; x=t; }/*交换x,z的值*/ if(【3】) { t=y; y=z; z=t; }/*交换z,y的值*/ printf(\ printf(\} 【参考答案】 (1) x>y (2) x>z (3) y>z 下列给定程序中,函数fun的功能是:找出100到n(不大于1000)之间三个位上的数字都相等的所有整数,把这些整数放在s所指的数组中,个数作为函数值返回。 请改正函数fun中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include int fun(int *s, int n) { int I,j,k,a,b,c; j=0; for(I=100; I /*************found**************/ k=n; a=k; k/=10; /*************found**************/ b=k/10; c=k/10; if(a==b && a==c) s[j++]=I; } return j; } void main() { int a[N], n,num=0, i; do { printf(\ scanf(\ } while(n > 1000); num= fun(a,n); printf(\ for(i=0; i 【参考答案】 (1)错误:k=n 正确:k=i; (2)错误:b=k/10; 正确:b=k; 第三十八套 请补充main函数,该函数的功能是:计算三名学生学科的平均成绩。 例 如 , 当 score[N][M]={{83.5,82,86,65,67},{80,91.5,84,99,95},{90,95,86,95,97}}时,五门学科的平均分为:84.5,89.5,85.3,86.3,86.3。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在main函数的横线上填入所编写的若干表达式或语句。 试题程序: #include int I,j; static float score[N][M]= {{83.5,82,86,65,67},{80,91.5,84,99,95},{90,95,86,95,97}}; static float bb[N]; system(\ for(I=0;I bb[I]=0.0; for(I=0;I<【1】;I++) { } for(I=0;I printf(\【3】); return 0; } 【参考答案】 (1) N (2) M (3) bb[i]/N 下列给定程序中,函数fun的功能是:求k!(k<13),所求阶乘的值作为函数值返回。例如,若k=10,则应输出3628800。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include /*************found**************/ if k>1 return(k*fun(k-1)); return 1; } void main() {int k=10; system(\ printf(\ } 【参考答案】 for(j=0;j<【2】;j++) bb[j]+=score[I][j]; 错误:if k>1 正确:if(k>1) 第三十九套 请补充函数fun,该函数的功能是:判断一个数的个位数字和百位数字之和是否等于其十位上的数字,是则返回\否则返回\。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。 试题程序: #include int g,s,b; g=n; s=n/10; b=【1】; if((g+b)==s) return 【2】; else return 【3】; } void main() { int num=0; system(\ printf(\ scanf(\ printf(\ printf(\ printf(\} 【参考答案】 (1) n/100 (2) \ 下列给定程序中,函数fun的功能是:传入一个整数m,计算如下公式的值。 t=1/2-1/3-…-1/m 例如,若输入5,则应输出-0.283333。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include double t=1.0; int I; for(I=2;I<=m;I++) /*************found**************/ t=1.0-1/I; /*************found**************/ ; } void main() {int m; system(\ printf(\ scanf(\ printf(\ fun(m)); } 【参考答案】 (1)错误:t=1.0-1/i; 正确:t-=1.0/i; (2)错误:; 正确:return t; 第四十套 数组xx[N]保存着一组3位数的无符号正整数,其元素的个数通过变量num传入函数fun。请补充函数fun,该函数的功能是:从数组xx中找出个位和百位的数字相等的所有无符号整数,结果保存在数组yy中,其个数由函数fun返回。 例 如 , 当 xx[8]={135,787,232,222,424,333,141,541} 时,bb[6]={787,232,222,424,333,141}。 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。 试题程序: #include int fun(int xx[],int bb[],int num) { int I,n=0; int g,b; for(I=0;I return【3】; } void main() { int xx[8]={135,787,232,222,424,333,141,541}; int yy[N]; int num=0,n=0,i=0; num=8; system(\ printf(\ for(i=0;i printf(\g=【1】; b=xx[I]/100; if(g==b) 【2】; printf(\ n=fun(xx,yy,num); printf(\ for(i=0;i printf(\ } 【参考答案】 (1) xx[i] (2) bb[n++]=xx[i] (3) n 下列给定函数中,函数fun的功能是:统计字符串中各元音字母(即A、E、I、O、U)的个数。注意:字母不分大小写。例如,输入THIs is a boot,则应输出是1 0 2 2 0。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include /*************found**************/ fun(char *s, int num[5]) { int k, i=5; for(k=0;k /*************found**************/ num[i]=0; for(;*s;s++) { i=-1; /*************found**************/ switch(s) { case 'a': case'A':{i=0;break;} case 'e ': case 'E':{i=1;break;} case 'i': case 'I':{i=2;break;} case 'o': case 'O':{i=3;break;} case 'u': case 'U':{i=4;break;} } if(i>=0) num[i]++; } } void main() { char s1[81]; int num1[5], i; system(\ printf(\ gets(s1); fun(s1, num1); for(i=0;i<5;i++) printf(\ printf(\ } 【参考答案】 (1)错误:fun(char *s, int num[5]) 正确:void fun(char *s, int num[5]) (2)错误:num[i]=0; (3)错误:switch(s) 正确:num[k]=0; 正确:switch(*s)
正在阅读:
机试练习4(31-40套含答案)04-16
晋江市教育局文件03-14
漕河泾开发区松江高新产业园“科技绿洲”一期项目简介05-02
计算机办公软件应用操作员(中级)练习题08-09
人教版高二物理必修二第五章曲线运动 5.6 向心力 导学案-word03-24
月度资金计划编制06-10
精选青年团入团申请书样本12-11
小题大做造句02-11
22 雾凇12-07
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 练习
- 答案
- 31
- 40
- 《景观工程日常养护标准》 - 图文
- 自动控制原理实验报告 - 图文
- 推行社会稳定风险评估经验材料
- 亚之星数控-DC6135说明书08-7-10 - 图文
- 浅谈重点人员管控工作的开展
- 做一个追求智慧的语文教师
- DXP Gerber文件输出教程
- 塑料模具验收标准
- 2015年消防安全技术实物考试押题简答题
- 田庄小学关于配备副校长的申请报告
- 计算机通信与网络-考卷4 - 图文
- 社会责任与商业道德风险识别与评估表
- 民国南京政府授予将军全名录
- 关于军转干部安置工作存在的问题调研报告
- Letter of Guaranty format 外贸采购保证涵格式
- 中国绿原酸市场深度调查及战略研究报告(2015版)
- 闽文化概论形成性考核册
- 直营店铺薪资体系
- 关于环境学
- 最新证券市场基础知识