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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(全国计算机等级考试C语言上机考试题库4160套Word文件下载.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

全国计算机等级考试C语言上机考试题库4160套Word文件下载.docx

1、z)|(siAZ) /*found*/ tj=_1_; j+; else pk=si; k+; _2_; i+) tj+i=pi; tj+k= _3_; return t;main() char s80; printf(Please input: ); scanf(%s,s);nThe result is: %sn,fun(s);【参考答案】(1)si?(2)k?(3)0或0【考点分析】本题考查:数组元素赋值操作;for循环语句中循环变量的取值范围;字符串结束标识【解题思路】填空1:将字符串s中所有字母元素赋给数组t。填空2:字符串中所有非字母元素放到字母元素后面,所以取值范围是0k。填空3:

2、最后给字符串加入结束标识2、程序修改下列给定程序中函数fun的功能是:将s所指字符串中最后一次出现的与t1所指字符串相同的子串替换成t2所指字符串,所形成的新串放在w所指的数组中。要求t1和t2所指字符串的长度相同。例如,当s所指字符串中的内容为:abcdabfabc,t1所指串中的内容为ab,t2所指子串中的内容为99时,结果在w所指的数组中的内容应为abcdabf99c请改正程序中的错误,使它能得出正确的结果。部分源程序在文件MODI1.C中,不得增行或删行,也不得更改的程序的结构!void fun (char *s, char *t1, char *t2 , char *w) char

3、*p , *r, *a; strcpy( w, s );/*found*/ while ( w ) p = w; r = t1; while ( *r ) IF ( *r = *p ) r+; p+; else break; if ( *r = ) a = w; w+; r = t2; while ( *r ) *a = *r; a+; r+; char s100, t1100, t2100, w100;nPlease enter string S:, s);nPlease enter substring t1:, t1);nPlease enter substring t2:, t2); i

4、f ( strlen(t1)=strlen(t2) ) fun( s, t1, t2, w);nThe result is :, w); else printf(nError : strlen(t1) != strlen(t2)n(1)while(*w)(2)if(*r=*p)while循环语句,C语言中的关键字。(1)这里要判断的是值的真假,而不是地址,所以改为while?(*w)。(2)C语言中关键字区分大小写,只需运行程序,就可以根据错误提示找到。3、程序设计编写函数fun,其功能是:将s所指字符串中ASCII值为奇数的字符删除,剩余字符形成的新串放在t所指数组中。例如,若s所指字符串中

5、的内容为:ABCDEFG12345,其中字符A的ASCII码值为奇数,字符1的ASCII码值也为奇数,都应当删除,其它依此类推。最后t所指的数组中的内容应是:BDF24部分源程序在文件PROG1.C中。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。void fun(char *s, char t) char s100, t100;void NONO (); fun(s, t);, t); NONO();void NONO ()/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */ char s100, t100 ; FILE *r

6、f, *wf ; int i ; rf = fopen(in.dat,r) ; wf = fopen(out.datw for(i = 0 ; i 10 ; i+) fscanf(rf, , s) ; fun(s, t) ; fprintf(wf, %sn, t) ; fclose(rf) ; fclose(wf) ;void?fun(char?*s,char?t)int?i,j=0,n;n=strlen(s);for(i=0;imalloc.h#define N 10typedef struct ss char num10; int s; STU;STU *fun(STU a, int m)

7、 STU bN,*t; int i, j,k;/*found*/ *t=calloc(m,sizeof(STU);N;i+) bi=ai; for(k=0;kbj.s) j=i; tk.num=bj.num; tk.s=bj.s; bj.s=0;return t;outresult(STU a,FILE *pf) int i; fprintf(pf, No=%s Mark=%dn ,ai.num, ai.s);nn void main() STU aN= A01 ,81, A02 ,89, A03 ,66, A04 ,87, A05 ,77, A06 ,90, A07 ,79, A08 ,61

8、, A09 ,80, A10 ,71; STU *pOrder; int i, m; system(CLS*THE RESULT*n outresult(a,stdout);nGive the number of the students who have better score:%d,&m); while(m10) printf( pOrder=fun(a,m);* THE RESULT*nThe top :n%s %dn,pOrderi.num, pOrderi.s); free(pOrder);(1)t=calloc(m,sizeof(STU);(2)tk=bj;(1)calloc应用

9、于分配内存空间。调用形式为?(类型说明符*)calloc(n,size),功能:在内存动态存储区中分配n块长度为size字节的连续区域,函数的返回值为该区域的首地址,(类型说明符*)用于强制类型转换。calloc函数与malloc?函数的区别在于calloc函数一次可以分配n块区域。例如,ps=(struct?stu*)?calloc(2,sizeof?(struct?stu);,其中的sizeof(struct?stu)是求stu的结构长度。该语句的意思是:按stu的长度分配两块连续区域,强制转换为stu类型,并把其首地址赋予指针变量ps。在本题中不用考虑那么复杂,根据定义类型STU?bN,

10、*t;就可以看出*t=calloc(m,sizeof(STU)中的错误。(2)tk.num=bj.num的错误旨在考查对结构体概念的掌握和灵活应用程度。请编写函数fun,该函数的功能是:删除一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。例如,若一维数组中的数据是:2?3?4?5?6?7?8?9?10?10删除后,数组中的内容应该是:请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。#define N 80int fun(int a, int n) FILE *wf; int aN= 2,2,2,3

11、,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10,10, i, n=20;The original data : i+) %3d,ai); n=fun(a,n);nnThe data after deleted : nn/*/ wf=fopen( fprintf(wf, fclose(wf);/*/fun(int?a,?n)i,j=1;for(i=1;if(aj-1!=ai)?/*若该数与前一个数不相同,则要保留*/aj+=ai;return?j;/*返回不相同数的个数*/?该程序的流程是:定义变量i和j,其中j用于控制删除后剩下的数在数组中的下标,i用于搜索原数组中的元素。

12、j始终是新数组中最后一个元素的下一个元素的下标,所以if语句中的条件是aj-1!=ai,其中aj-1就是新数组中的最后一个元素,若条件成立,则表示出现了不同的值,所以ai要保留到新数组中。注意本题中i和j的初值都要从1开始,该算法只能用于数组已排序的题目中。第四十三套计算NN矩阵的主对角线元素和反向对角线元素之和,并作为函数值返回。要求先累加主对角线元素中的值,再累加反向对角线元素中的值。例如,若N3,有下列矩阵:首先累加1、5、9,然后累加3、5、7,函数返回值为30。#define N 4fun(int tN, int n) int i, sum; _1_; sum+=_2_ ; sum+= tin-

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2