ImageVerifierCode 换一换
格式:DOC , 页数:3 ,大小:32.50KB ,
资源ID:1325876      下载积分:5000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-1325876.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(【计算机类职业资格】二级C语言机试75及答案解析.doc)为本站会员(unhappyhay135)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

【计算机类职业资格】二级C语言机试75及答案解析.doc

1、二级 C 语言机试 75 及答案解析(总分:100.00,做题时间:90 分钟)一、B填空题/B(总题数:1,分数:30.00)1.请补充函数 fun(),该函数的功能是判断一个数是否为回文数。当字符串是回文时,函数返回字符申:yes!,否则函数返回字符串:no!,并在主函数中输出。所谓回文即正向与反向的拼写都一样,例如:abcba。 注意:部分源程序给出如下。 请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun()的横线上填入所编写的若干表达式或语句。 试题程序: #includestring.h #includestdio.h char *fun(char*str) cha

2、r *p1,*p2; int i, t=0; p1=str;p2=str+strlen(str)-1; for (i=0;U 【1】 /U;i+) if(U 【2】 /U) t=1; break; if (U 【3】 /U) return(“yes!“); else return(“no!“); main() char str50; printf(“Input;“); scanf(“%s“,str); printf(“%s/n“,fun(str); (分数:30.00)填空项 1:_二、B改错题/B(总题数:1,分数:30.00)2.下列给定的程序中,函数 fun()的功能是:判断字符 ch

3、是否与 str 所指字符串中的某个字符相同;若相同,则什么也不做,若相同,则将其插在申的最后。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include conio.h #include stdio.h #include string.h /*found*/ void fun (char str,char ch) while (*str /*found*/ if(*str=ch) str0=ch; /*found*/ str1=0; main() char s81,c; clrscr(); printf(“

4、/nPlease enter a strzng : “); gets(s); printf(“/n Please enter the character to search : “); c=getchar(); fun(s,c); printf(“/nThe result is %s/n“,s); (分数:30.00)填空项 1:_三、B编程题/B(总题数:1,分数:40.00)3.下列程序定义了 NN 的二维数组,并在主函数中赋值。请编写函数 fun(),函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的 s。例如:若 a 数组中的值为 a= 0 1 2 7 9 1 9 7

5、4 5 2 3 8 3 1 4 5 6 8 2 5 9 1 4 1 则返回土程序后 s 的值应为 3.375。 注意:部分源程序给出如下。 请勿改动主函数 main 和其他函数中的仟何内容,仅在函数 fun 的花括号中填入所编写的若干语句。 试题程序: #include stdio.h #includeconio.h #includestdlib.h #define N 5 double fun (int w N) main() int aN N=0,1,2,7,9,1,9,7,4,5,2, 3,8,3,1,4,5,6,8,2,5,9,1,4,1; int i, j; double s; cl

6、rscr(); printf(“*The array*/n “); for (i=0; iN; i+) for (j=0;jN;i+) printf(“%4d “,ai j); printf(“/n “); s=fun(a); printf(“*THE RESULT*/n “); printf(“The sum is : %lf/n “,s); (分数:40.00)_二级 C 语言机试 75 答案解析(总分:100.00,做题时间:90 分钟)一、B填空题/B(总题数:1,分数:30.00)1.请补充函数 fun(),该函数的功能是判断一个数是否为回文数。当字符串是回文时,函数返回字符申:ye

7、s!,否则函数返回字符串:no!,并在主函数中输出。所谓回文即正向与反向的拼写都一样,例如:abcba。 注意:部分源程序给出如下。 请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun()的横线上填入所编写的若干表达式或语句。 试题程序: #includestring.h #includestdio.h char *fun(char*str) char *p1,*p2; int i, t=0; p1=str;p2=str+strlen(str)-1; for (i=0;U 【1】 /U;i+) if(U 【2】 /U) t=1; break; if (U 【3】 /U) ret

8、urn(“yes!“); else return(“no!“); main() char str50; printf(“Input;“); scanf(“%s“,str); printf(“%s/n“,fun(str); (分数:30.00)填空项 1:_ (正确答案:1 i=strlen(sb)/2 或 istrlen(sw)/2 2 *p1+!=*p2- 3 t=20)解析:解析 填空 1:判断回文数就是将第一个字符与最后个字符比较,第二个字符与倒数第二个字符进行比较,依此类推,直到中间的字符,如果比较的结果都是相同,则这个字符串就是回文数,否则不是。所以比较的次数是 strlen(str

9、)/2。填空 2:指针 p1 从第一个字符向后移动,指针 p2 从最后一个字符向前移动,如果两字符不相同,则说明此字符串不是回文数,将标记变量 t 置为 1。填空 3:变量 t 用来标记此字符串是否为回文数,当 t 为 0 时,表示字符串是回文数,当 t 为 1 时,表示字符串不是回文数。二、B改错题/B(总题数:1,分数:30.00)2.下列给定的程序中,函数 fun()的功能是:判断字符 ch 是否与 str 所指字符串中的某个字符相同;若相同,则什么也不做,若相同,则将其插在申的最后。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main 函数,不得增行或删行,也不得更改

10、程序的结构。 试题程序: #include conio.h #include stdio.h #include string.h /*found*/ void fun (char str,char ch) while (*str /*found*/ if(*str=ch) str0=ch; /*found*/ str1=0; main() char s81,c; clrscr(); printf(“/nPlease enter a strzng : “); gets(s); printf(“/n Please enter the character to search : “); c=getc

11、har(); fun(s,c); printf(“/nThe result is %s/n“,s); (分数:30.00)填空项 1:_ (正确答案:错误;void fun(char str,char ch) 正确:void fun(char *str,char ch))解析:(2) 错误:if(*str=ch) 正确:if(*str=/0) (3) 错误;str1=0; 正确:str1=/0; 解析 该题的重点就是在 while 的循环嵌套语句中,由题干信息“若相同,则什么也不做”很容易就能看出 if(*str=ch)后面的执行语句是错误的。另外,void 指针具有一般性,它们可以指向任何类

12、型的数据。但目前绝大多数 C 编译所提供的这类函数都返回 char 指针,再由题目中的定义得出 void fun(char str,char ch)的错误信息;str1=0;是一个简单的语法错误。三、B编程题/B(总题数:1,分数:40.00)3.下列程序定义了 NN 的二维数组,并在主函数中赋值。请编写函数 fun(),函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的 s。例如:若 a 数组中的值为 a= 0 1 2 7 9 1 9 7 4 5 2 3 8 3 1 4 5 6 8 2 5 9 1 4 1 则返回土程序后 s 的值应为 3.375。 注意:部分源程序给出如下。

13、 请勿改动主函数 main 和其他函数中的仟何内容,仅在函数 fun 的花括号中填入所编写的若干语句。 试题程序: #include stdio.h #includeconio.h #includestdlib.h #define N 5 double fun (int w N) main() int aN N=0,1,2,7,9,1,9,7,4,5,2, 3,8,3,1,4,5,6,8,2,5,9,1,4,1; int i, j; double s; clrscr(); printf(“*The array*/n “); for (i=0; iN; i+) for (j=0;jN;i+) p

14、rintf(“%4d “,ai j); printf(“/n “); s=fun(a); printf(“*THE RESULT*/n “); printf(“The sum is : %lf/n “,s); (分数:40.00)_正确答案:()解析:double fun (int wN) int i,j,k=0; double av=0.0; for(i=0;iN;i+) for(j=0;jN;j+) if(i=0|i=N-1|j=0|j=N-1) /*只要下标中有一个为 0 或 N-1,则它一定是周边元素*/ av=av+wij; /*将周边元素求和*/ k+; return av/k; /*求周边元素的平均值*/ 解析 该题采用逐一判断的方式,周边元素的下标一定有一个是 0 或 N-1,且只要下标中有一个为 0 或 N-1,则它一定是周边元素。计算周边元素个数的方式是当给 av 加一个值时,则 k 加 1。k 也可用 2*N+2*N-4 求得。

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