下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、级 C 语言机试 -151( 总分: 100.00 ,做题时间: 90 分钟 )一、填空题 (总题数: 1,分数: 30.00)1. 请补充函数 fun() ,该函数的功能是把数组 aa 中的偶数元素按原来的先后顺序放在原数组后 面。例如,输入“ 33, 67,42,58,25, 76, 85,16,41,56,输出结果“ 33, 67,25, 85, 41, 42,58, 76, 16, 56 。注意:局部源程序给出如下。请勿改动主函数 main 和其他函数中的任何内容, 仅在函数 fun() 的横线上填入所编写的假设干表达 式或语句。 试题程序:#define N 10void fun (
2、int aa )int i, j=0,k=0;int bb N;for (i=0;i <N; i+)if ( 【 1】 ) bb k+ =aa i;elseaa j + =aa i;for(i=0; 【2】 ;i+,j+)aaj =bb i;main ( )int i;int aaN=33, 67,42,58,25, 76, 85, 16,41,56;clrscr ();printf("/n* original list */n");for (i=0;i <N; i+)printf ("%4d", aa i );fun (aa);printf
3、("/n* new list */n ");for (i=0; i < N; i+)printf ("%4d", aa i );分数: 30.00 填空项 1: 正确答案: 1aai 2=0 2i <k解析: 解析 填空 1:如果一个数对 2 求余,结果为 0;那么这个数为偶数,就把这个数先暂时存 在数组 bb 中。否那么这个数为奇数,就存在数组 aa 中。填空 2:最后,将数组 bb 中的偶数都拷贝到数组 aa 中奇数的 后面。变量 k 记录了原数组 aa 中偶数的个数,所以 for 循环的条件是 i <k 。改错题 ( 总题数: 1
4、,分数:30.00 )2. 以下给定程序中,函数fun()的功能是:将字符串p中所有字符复制到字符串b中,要求每复制3个字 符之后插入一个空格。例如,在调用fun()函数之前给字符串a输入ABCDEFGHIJ ,K调用函数之后,字符串 b中的内容那么为 ABC DEF GHI JK。请改正程序中的错误,使它能得出正确的结果。注意:不要改动 main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include < stdio. h > void fun (char *p, char *b) int i, k=0;while (*p)i=l;*found*while (i &
5、lt; 3| *P) bk=*p; k+; p+; i+;if (*p) bk= bk= 70'i j. * fo un d* main () char a80,b80;pri ntf ("E nter a stri ng: "); gets (a); printf ("The orig inal stri ng: "); puts (a);fun (a,b);pri ntf("/nThe stri ng after in sert space: "); puts(b); prin tf("/n/n ");
6、(分数:30.00 )填空项1: (正确答案:错误: i=1 ; 正确:i=0 ;错误: while(i <3|*p)正确:while(i <3&&*p)错误:bk='';正确:bk+='';)解析:解析该题考查字符串复制程序的构造方法,题中插入空格字符的定义条件是while(i <3|*p)当然要同时满足i <3和*p这两个条件后才能执行b(k+= '' ; 这个语句,该语句的含义是在输出结果中置入空格字符。三、编程题(总题数:1,分数:40.00)3. 请编写函数fun(),该函数的功能是:将M行N列的
7、二维数组中的数据,按行的顺序依次放到一维数组 中,一维数组中数据的个数存放在形参n所指的存储单元中。例如,假设二维数组中的数据为:33 33 33 3344 44 44 4455 55 55 55那么一维数组中的内容应该是33 33 33 33 44 44 44 AA , 55 55 55 55注意:局部源程序给出如下。请勿改动主函数 main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的假设干语句试题程序:#include < stdio. h >void fun (int (* ?s)10, int *b, int *n,正确答案:(void fun (in t
8、(*s)10, i nt *b, i nt *n, i nt mm, i nt nn)int i, j, k=0;for (i=0; i <mm; i + ) / *将二维数组 s中的数据按行的顺序依次放到一维数组b中* / for (j=0; j < nn; j+) int mm, int nn) main () int w10 10=33,33,33,33,44,44, 44,44,55,55,55,55, i, j;int a100=0, n=0 ; printf ("The matrix: /n );for (i=0; i < 3; i+)for (j+0;
9、 j<4; j+)printf ("%3d",wi j);printf ("/n");fun (w,a, &n, 3, 4);printf ("The A array: In ); for(i=0; i <n; i+) pri ntf ("%3d", a i);printf ("/n/n");分数:40.00 )bk+=s i j; /*通过指针返回元素个数*/?n 二k)解析:解析我们可以用两个循环来处理问题,由于是按行的顺序取出,所以第1个循环用于控制行下标, 第2个循环用于控制列下标;假设改成按列的顺序取出,那么循环应改成:for(i=0 ; i < nn ;i+)for(j=0 ; i < mm ;j+) bk+=sji;要注意sji的下标,不
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度汽车租赁公司与个人短期自驾游服务协议3篇
- 二零二五年度养殖场劳务合同(养殖场环保设施建设)3篇
- 2025年度跨境电商业务承包合同3篇
- 2025年度旅游套餐分期付款购买合同3篇
- 2025年度农产品出口业务委托收购及代理协议3篇
- 2025年度停车场车位资源优化配置合同3篇
- 2025年度体育俱乐部兼职教练员聘用合同书3篇
- 二零二五年度篮球球员转会合同变更通知3篇
- 二零二五年度公司销售业务员协议书:环保建筑材料销售服务合同3篇
- 二零二五年度酒店前台礼仪与客户满意度劳动合同3篇
- 中国药典无菌、微生物限度和细菌内毒素检查方法学验证内容详解
- 《实用日本语应用文写作》全套电子课件完整版ppt整本书电子教案最全教学教程整套课件
- 公司员工手册-全文(完整版)
- 锅炉习题带答案
- 土木工程课程设计38281
- 农村宅基地地籍测绘技术方案
- 液压爬模作业指导书
- 剧院的建筑设计规范标准
- 遗传分析的一个基本原理是DNA的物理距离和遗传距离方面...
- 安全生产标准化管理工作流程图
- 初一英语单词辨音专项练习(共4页)
评论
0/150
提交评论