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

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

1、国家二级( C语言)机试模拟试卷 201及答案与解析 一、程序填空题( 30分) 1 给定程序中,函数 fun的功能是:在形参 s所指字符串中的每个数字字符之后插入一个 *号。例如,形参 s所指的字符串为: det35adh3kjsdf7。执行结果为: def3*5*adh3*kjsdt7*。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的 BI ANK1 C中。 不得增行或删行,也不得更改程序的结构 ! #include void fun(char*s) int i, j, n; for(i=0; si!= 0; i+) *found

2、* if(si=0【 1】 sii; j ) *found* sj+1=【 3】; sj+1=*; i=i+1; main() char s80=“ba3a54cd23a“; printf(“ nThe original string is: s n“, s); fun(s); printf(“ nThe result is: s n“, s); 二、程序修改题( 30分) 2 给定程序 MODll C的功能是: 读入一个整数 k(2k10000),打印它的所有质因子 (即所有为素数的因子 )。 例如,若输入整数: 2310,则应输出: 2、 3、 5、 7、 11。 请改正程序中的语法错误,

3、使程序能得出正确的结果。 注意:不要改动 main函数,不得增行或删行,也不得更改程序的结构 ! #include /*found*/ IsPrime(int n); /*定义函数 */ int i, m; m = 1; for (i = 2; i unsigned fun (unsigned w) NONO() /* 请在此函数内打开文件,输入测试数据,调用 fun 函数,输出数据,关闭文件。 */ unsigned x ; int i ; FILE *rf, *wf ; rf = fopen(“in.dat“,“r“); wf = fopen(“out.dat“,“w“); for(i =

4、 0 ; i =0【 1】 si=0和 sii; j-)“循环中移动后面的字符了,故while的条件是没有达到字符串结束位, n+,即第二空处应填 “0“或 “ 0“。 第三空: “for(j=i+n+1; ji; j-)“循环是将数字字符后面的字符往后移动一位,从最后一个字符开始往后移动,故 sj+1=sj,即第三空处为 “sj“。 二、程序修改题( 30分) 2 【正确答案】 IsPrime( int n) if(!(n%i) 【试题解析】 ( 1)第一个标识下面的 “IsPrime( int n) ;”在程序中显然是一个函数,因此应将后面的分号去掉。 ( 2)第二个标识下面的 if语句后

5、面缺少括号,因此, if !( n%i)应改为 if(!(n%i)。 该题主要考查标点符号、运算符、基本定义。 三、程序设计题( 40分) 3 【正确答案】 unsigned t,s=0,s1=1,p=0; t=w; while(t10) if(t/10) p=t%10; s=s+p*s1; s1=s1*10; t=t/10; return s; 【试题解析】 进入 fun函数,根据前面的分析: 利用 while循环语句,根据对拆分无符号数的分析取得每位上的数。如果要截取的数 t大于 10,就说明 t不只有个位,进入 while循环。每次截取一位 p,然后将 p乘以相应的权数 s1,加上原有的计算结果 s,形成的新的数,然后将 t中截取的这位删除。其中,截取 t的第一位,那么权数就是 1,第二位对应的权数就是 10,以此类推。

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

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

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