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

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

1、国家二级 C语言机试(操作题)模拟试卷 287及答案与解析 一、程序填空题 1 下列给定程序中,函数 fun的功能是进行数字字符转换。若形参 ch中是数字字符 0 9,则将 0转换成 9, 1转换成 8, 2转换成 7, , 9转换成 0;若是其他字符则保持不变;并将转换后的结果作为函数值返回。 请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构 ! 试题程序: #include stdio h *found* 【 1】 fun(char ch) *found* if(ch=0&【 2】 ) *found*

2、return9 (ch 【 3】 ); return ch; main() char c1, c2; printf(“ nThe result: n“); c1=2; c2=fun(c1); printf(“c1= c c2= c n“, c1, c2); c1=8; c2=fun(c1); printf(“cl= c c2= c n“, c1, c2); c1=a; c2=fun(c1); printf(“c1= c c2= c n“, c1, c2); 二、程序修改题 2 下列给定程序中函数 fun的功能是:判断一个整数是否为素数,若是素数返回1,否则返回 0。 在 main函数中,若 f

3、un返回 1输出 YES,若 fun返回 0输出 NO!。 请改正程序中的错误,使它能得出 正确的结果。 注意:不要改动 main函数,不得增行或删行,也不得更改程序的结构 ! 试题程序: #include stdlib h #include conio h #include stdio h int fun(intm) int k=2; while(k m (m k) *found* k+ *found* if(m k) return 1; else return 0 ; void main() int n; system(“CLS“); printf(“ nplease enter n: “

4、); scanf(“ d“, n); if(fun(n)printf(“YES n“); else printf(“NO! n“); 三、程序设计题 3 规定输入的字符串中只包含字母和 *号。编写函数 fun,其功能是:除了字符串前导和尾部的 *号外,将串中其他的水号全部删除。形参 h已指向字符串中第 个字母,形参 P指向字 符串中最后一个字母。在编写函数时,不得使用 C语言提供的字符串函数。 例如,若字符串中的内容为 “*A*BC*DEF*G*”,删除后,字符串中的内容应当是 “*ABCDEFG*”。 注意:部分源程序给出如下。 请勿改动主函数 main和其他函数中的任何内容,仅在函数 fu

5、n的花括号中填入你编写的若干语句。 试题程序: #include stdio h #include conio h #include string h void fun(char*a, char*h, char*P) main() char s81, *t, *f ; printf(“Enter a string: n“); gets(s); t=f=s ; while(*t) t+; t-; while(*t=*) t-; while(* f=*) f+; fun(s, f, t); printf(“The string after deleted: n“); puts(s); 国家二级 C

6、语言机试(操作题)模拟试卷 287答案与解析 一、程序填空题 1 【正确答案】 (1)char (2)ch =9 (3)0 【试题解析】 本题考查:函数定义,注意函数定义的一般形式以及有参函数和无参函数的区别; if语句条件表达式,本题的条件表达式是判断数字字符;函数返回值,其一般形式为 “return表达式; ”。 填空 1:函数定义时,类型标识符指明了函数的类型,函数的类型实际上是函数返回值的类型,所以此处应该填入 char。 填空 2:通过 if条件语句判断字符串中字符是否为数字字符,即大于等于字符0,同时小于等于字符 9。 填空 3: return语句完成函数返回操作,要实现字符转换,

7、完整语句为 return9一(ch一 0)。 有参函数定义,其一般形式为: 类型标识符函数名 (形式参数列表 ) 声明部分 语句 在形参列表中给出的参数称为形式参数,它们可以是各种类型的变量,各参数之间用逗号分隔。在进行函数调用时,主调函数将赋予这些形式参数实际的值。形参也是变量,必须在形参列表中给出类型说明。 二、程序修改题 2 【正确答案】 (1)k+ ; (2)if(m=k) 【试题解析】 函数 fun的功能是判断 m是否为素数: m从 2开始作为除数,并对 m取余,若不存在一个数使得余数为 0,则 m为素数,程序的错误在于 if(m=k)语句中的逻辑表达式写成了赋值语句。 三、程序设计题 3 【正确答案】 void fun(char*a, char*h, char*p) int i=0; char*q=a; *将前导 *号保存到 a中 * while(q h) ai=*q; q+; i+; *继续遍历数组 * while(q p) if(*q!=*) *如果不是木保存到 a中 * ai=*q; i+; q+; *将末尾 *号保存到 a中 * while(*q) ai=*q; i+; q+; ai= 0; 【试题解析】 本题的重点是要选择好判断条件,首先是需要判断前导 *号的结束,然后判 断是否指向最后一个字母,最后补充尾部 *号。

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

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

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