[计算机类试卷]国家二级(C语言)机试模拟试卷385及答案与解析.doc

上传人:outsidejudge265 文档编号:503147 上传时间:2018-11-29 格式:DOC 页数:5 大小:29KB
下载 相关 举报
[计算机类试卷]国家二级(C语言)机试模拟试卷385及答案与解析.doc_第1页
第1页 / 共5页
[计算机类试卷]国家二级(C语言)机试模拟试卷385及答案与解析.doc_第2页
第2页 / 共5页
[计算机类试卷]国家二级(C语言)机试模拟试卷385及答案与解析.doc_第3页
第3页 / 共5页
[计算机类试卷]国家二级(C语言)机试模拟试卷385及答案与解析.doc_第4页
第4页 / 共5页
[计算机类试卷]国家二级(C语言)机试模拟试卷385及答案与解析.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、国家二级( C语言)机试模拟试卷 385及答案与解析 一、程序填空题( 30分) 1 请补充 fun()函数,该函数的功能是:把一个整数转换成字符串,并倒序保存在字符数组 s中。例如,当 n=123时, s=“321“。 注意:部分源程序给出如下。 请勿改动 main()函数和其他函数中的任何内容,仅在 main()函数的横线上填人所编写的若干表达式或语句。 试题程序: #include #include #define M 80 char sM; void fun(10ng int n) int j=0; while(【 1】 ) sj=【 2】; n =10; j+; 【 3】; void

2、 main() long int n=1234567; printf(“The origial data n“); printf(“n= ld“, n); fun(n); printf(“ n s“, s); 二、程序修改题( 30分) 2 下列给定程序中,函数 fun()的功能是:从字符串 s中,删除所有大写字母 F。 请改正程序中的错误,使它能得到正确结果。 注意:不要改动 main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include stdio.h void fun(char *s) int i, j; /*found*/ for(i=j=0; si!= 0;i+)

3、 if(si != F) /*found*/ sj=si; sj=0; main ( ) char s80; printf(“nEnter a string: “); gets(s); printf(“The original string: “); puts(s); fun(s); printf(“The string after deleted: “); puts(s); printf(“nn “); 三、程序设计题( 40分) 3 请编写函数 fun(),它的功能是:移动一维数组中的内容,若数组中有 n个整数,要求把下标从 0到 p(含 p, p n-1)的数组元素平移到数组的最后。例如

4、:一维数组中的原始内容为: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10; p的值为 3。移动后,一维数组中的内容应为: 5, 6, 7, 8, 9, 10, 1, 2, 3, 4。部分源程序在文件PROG1.C中。请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 #include stdiO.h #define N 80 void fun(int *w, int p, int n) main() in aN=1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15; int i, p, n

5、=15; printf(“The odginal data:n“); for(i=0; i n; i+)printf(“%3d“,ai); printf(“nEnter p: “); scanf(“%d“,si!=0;i+) 正确: for(i=j=0;si!0;i+) (2) 错误: sj=si 正确: sj+=si; 【试题解析】 错误 1:本题考查是否掌握字符串的最后一个字符是结束标志符0。错误 2:在循环中,新字符串的下标也要递增,这样最终产生一个新的字符串。 三、程序设计题( 40分) 3 【正确答案】 void fun(int*w,int p,int n) int i,J; int aN; for(i=0; i =p; i+)ai=wi for(i=p+1,j=0; i n; i+,j+)wj=wi; for(i=0; i =p; i+)wn-p-1+i=ai; 【试题解析】 将数组后面的元素向前平移,肯定会将前面的元素覆盖。因此,可以定义一个数组用来暂时存放前面的元素。可以先将 w0 wp依次赋给 a0ap;然后将 wp wn1) 移到数组的前面:再将 a0 ap)依次赋给 wn-p-1+i wn1。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1