




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
模拟练习一试题四、程序阅读题(每题5分, 共15分)说明:阅读下列程序,将运行时的输出结果写在答卷纸的相应题号下。1、 程序1# include void main( ) int j, k; float f,s; s=0; f=1; for(k=1; k=3; k+) for(j=1; jk; j+) f=f*k; s=s+f; printf(%.0f#,s); 【讲解】第1次:k=1,j=1, 里层循环不执行:s=s+f=0+1,s=1第2次:k=2,j=1,循环执行,f=1*2=2:s=1+2,s=3第3次:k=3,j=1,循环执行,f=2*3=6,注意:里层循环继续,s现在不运算,第4次:k=3,j=2,循环执行,f=6*3=18,注意:里层循环结束,s现在运算:s=s+f=3+18=21模拟练习二试题二、单选题(每题2分,共20分) (14) 下列程序段的输出结果是 (14) 。int count = 0, x, y, z;for(x = 1; x = 2; x+) for(y = 1; y = 3; y+) for(z = 1; z 2) return f(n-1)+n; else return n;A、9 B、10 C、2 D、4【讲解】f(4)=f(3)+4=(f(2)+3)+4=(2+3)+4=9试题三、程序填空题(每空2分,共20分)说明:阅读下列程序说明和相应程序,在每小题提供的若干可选答案中,挑选一个正确答案。程序1【程序说明】求 2/1 + 3/2 + 5/3 + 8/5 + 的前10项之和。(该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子) 【程序】#include void main() int i, a = 1, b = 1, t; (21) ; for(i = 1; i = 10; i+) t = a; (22) ; b = t;y = (23) ; printf(%fn, y);(21) A、int y = 0 B、int y C、double y = 0 D、double y【讲解】这里应该是定义变量y的类型,应为y是小数的和,应该在C和D中选择。结合(23)处考虑,有y=y+,所以此处必须赋初值。因此正确的是C。(22) A、a = b B、b = a + bC、a = a + bD、b = a 【讲解】仔细阅读程序,发现a表示分子,b表示分母,结合题目的意思考虑,此处正确的是C。(23) A、y + 1.0*a/bB、y + a/bC、a/b D、1.0*a/b 【讲解】在选项A中,1.0*a先算,结果是小数。B和C都是整数,不对。D没有累加,不对。程序2【程序说明】读入一批正整数(以零或负数为结束标志),输出其中的素数。函数prime(m)用于判断m是否为素数。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。【程序】#include stdio.h#include math.hvoid main( ) int x; int prime(int m); scanf(%d, &x); while( (24) ) if(prime(x) printf(%dn, x); scanf(%d, &x); int prime(int m) int k, n, res; if(m = 1) return 0; res = 1; n = (int)sqrt(m); for(k = 2; k = n; k+) if(m%k = 0) (25) ; break; return (26) ; (24) A、x = 0C、x 0【讲解】根据题目意思,0或负数就结束,因此,循环要执行的条件就是X0。(25) A、res = 1B、res = 0C、res = -1 D、res = 2【讲解】如果m%k=0就说明m被k整除了,那么就不是素数了。此时res=0。(为什么不是res=1?根据这一句if(prime(x) printf(%dn, x);可以推断出来。)(26) A、1 B、resC、0 D、-1根据这一句if(prime(x) printf(%dn, x);可以推断出来答案为B。)程序3【程序说明】输入1000个整数,用选择法将它们从小到大排序后输出。【程序】#include void sort(int a , int n);void main( ) int i, a1000; for(i = 0; i 1000; i+) scanf(%d, &ai); (27) ; for(i = 0; i 1000; i+) printf(%d , ai); printf(n); void sort( (28) ) int i, index, k, t; for(k = 0; k n-1; k+) index = (29) ; for(i = k + 1; i n; i+) if( (30) ) index = i; t = aindex; aindex = ak; ak = t; (27) A、sort(a , 1000)B、sort(a, 1000)C、sort(a) D、sort(a1000)(28) A、int a, int n B、int a C、int *a, int *n D、int *a, int n (29) A、kB、0C、nD、i(30) A、ai aindexB、ai aindexC、ai aindex试题四、程序阅读题(每空2分,共20分)说明:阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。程序1#include stdio.hvoid main( ) int j, k, n = 3, temp, sum = 0; int a66; /*执行完以下循环后,得到的数组是:*/ for(k = 0; k n; k+) /* 0 1 2*/ for(j = 0; j n; j+) /*3 4 5*/ akj = k * n + j; /*6 7 8*/ for(k = 0; k n; k+)sum = sum + akk; /*这2句求对角线元素的和:sum=a00+a11+a22 结果:sum=0+4+8=12*/ printf(%dn, sum); /*输出12*/ for(k = 0; k n; k+) /*注意:sum此时的值为12*/sum = sum + akn-k-1; /*sum=12(上句)+a02+a11+a20sum=12+2+4+6=24*/ printf(%dn, sum); /*输出24*/(31) 程序运行时,第1行输出 (31) 。A、15B、12C、3 D、0(32) 程序运行时,第2行输出 (32) 。A、30B、24C、15D、12程序2#include void main( ) char ch; while(ch = getchar() != n) if ( ch=A & ch=A & ch=A & ch=A & ch=A & ch=A & ch=Z ) ch = a + Z - ch;得到: ch= a + Z Z ch= a + 0 ch=a(小写字母a)程序3#include int f(int number, int digit) int count = 0; while(number != 0) if(number%10 = digit) count+; number = number / 10; return count;void main( ) printf(count=%dn, f(10090, 0); printf(count=%dn, f(10090, 9); (36) 程序运行时,第1行输出 (36) 。A、count=0B、count=1C、count=3D、count=5 (37) 程序运行时,第2行输出 (37) 。A、count=3B、count=9C、count=1 D、count=5 【讲解】程序的核心是理解自定义函数f(number,digit)的作用:f计算number中有数字digit的个数。在(36)中,10090中有3个0,所以答案是C在(37)中,10090中有1个9,所以答案是C程序4#include void main( ) int choice, i; float price;for( i = 1; i = 5; i+) /*22222222222222*/ scanf(%d, &choice); if(choice = -1) break; /*第3次,输入-1,程序执行到这一句,直接退出for循环*/ switch (choice) /*111111111111111*/ case 1: price=2.5; break; case 2: price=1.5; break; case 3: price=4.5; break; /*第1次,输入3,程序执行到这一句*/ case 4: price=3.5; break; default: price=0.0; break; /*第2次,输入7,程序执行到这一句*/ /*1111111111111*/ printf(%0.1fn, price); /*22222222222
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教学语音课件
- 文库发布:心态的课件
- 国土教学课件下载
- 教育政策评价课件
- 2025上半年度企业安全生产主体责任履职报告
- 斟酌洗浴活动方案
- 春天系列活动方案
- 新奇活动策划方案
- 星火工程活动方案
- 散学仪式活动方案
- JT-T 329-2025 公路桥梁预应力钢绞线用锚具、夹具和连接器
- 检验检测机构质量手册程序文件质量记录合集(依据2023年版评审准则)
- 2025-2030全球及中国管道运输服务行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030中国海上风电装备产业发展调查及经营状况深度解析研究报告
- 结构检测员考试题及答案
- 教培机构合作办学协议书范本
- 三高患者健康教育
- 初中英语大单元教学中融入中国传统文化的策略与实践研究
- DBJT45-166-2024《预拌混凝土企业内设试验室管理规程》
- 柔性传感器阵列信号处理-深度研究
- 2025年内蒙古地矿集团直属子公司招聘笔试参考题库含答案解析
评论
0/150
提交评论