[计算机类试卷]国家二级C++机试(操作题)模拟试卷166及答案与解析.doc
-
资源ID:497228
资源大小:29KB
全文页数:6页
- 资源格式: DOC
下载积分:2000积分
快捷下载

账号登录下载
微信登录下载
下载资源需要2000积分(如需开发票,请勿充值!)
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
[计算机类试卷]国家二级C++机试(操作题)模拟试卷166及答案与解析.doc
1、国家二级 C+机试(操作题)模拟试卷 166及答案与解析 一、基本操作题 1 给定程序中,函数 fun的功能是:将形参 s所指字符串中所有 ASCII码值小于 97的字符存入形参 t所指字符数组中,形成一个新串,并统计出符合条件的字符个数作为函数值返回。 例如,形参 s所指的字符串为: Abelx56水,程序执行后 t所指字符数组中的字符串应为: A156术。 注意:部分源程序在文件 BLANKl C中。 不得增行或删行,也不得更改程序的结构 ! 试题程序: #include int fun(char*s, char*t) int n=0; while(*s) if(*s #include d
2、ouble fun(int n) double result=1 0; *found* if n=0 return 1 0; while(n1&n #include #include #include char*fun(char(*a)81, int num, char*max) void main() FILE*wf; char ss1081, *ps=NULL; char s381=“abcd“, “deg“, “diegns“, *p=NULL; int i=0, n; system(“CLS“); printf(“输入若干个字符串: “); gets(ssi); puts(ssi);
3、while(!strcmp(ssi, “*“)- =0) *用 4个星号作为结束输入的标志 * i+; gets(ssi); puts(ssi); n=i: ps=fun(ss, n, ps); printf(“ nmax= s n“, ps); * wf=fopen(“out dat“, “w“); p=fun(s, 3, P); fprintf(wf, “ s“, p); fclose(wf); * 国家二级 C+机试(操作题)模拟试卷 166答案与解析 一、基本操作题 1 【正确答案】 (1)*s (2)s+ (3)n 【试题解析】 填空 1:判断 s所指向的字符串中的字符符合条件时,将
4、当前字符存放到 t指向的字符串中,所以应填 *s。 填空 2:判断完一个字符之后,将字符串的指针移到下一个位置,所以应填s+。 填空 3:题目要求函数要返回符合条件的字符个数 n,所以应填 n。 二、简单 应用题 2 【正确答案】 (1)if(n=0) (2)result*=n-;或 result*=n; n-; 【试题解析】 (1)这里是一个简单的格式错误, if条件判断语句应该加括号。 (2)根据阶乘的概念,从 n开始, n!=n*(n 1)!,直到 1,所以应该为 result*=n-;。 三、综合应用题 3 【正确答案】 char*fun(char(*a)81, int num, char*max) int i=0; msx=a0; for(i=0; inum; i+)水找出最长的一个字符串 * if(strlen(max) strlen(a i) max=a1; return max; *传回最长字符串的地址 * 【试题解析】 解答本题之前,首先应该明白 ss是一个指向一维数组的指针变量, max是指向指针的变量,所以引用变量时要注意加上 *。本程序使用循环语句遍历字符串数组,使用条件语句判断该字符串是否最长。