四川省二级c语言29次机试试题及答案
更新时间:2023-11-24 21:55:01 阅读量: 教育文库 文档下载
- 计算机二级c语言推荐度:
- 相关推荐
四川省第二十九次计算机二级考试C与C++语言 机试试题(2008年10月19日)
(第一套) (60分钟)
一、程序调试题(40分)
磁盘上有一程序test1-1.c,其中函数fun的功能是:求出形参ss所指字符串数组中最长字符串的长度,其余字符串左边用字符*补齐,使其与最长的字符串等长。字符串数组中共有M个字符串,且串长 请改正程序中的错误 ,使程序能得出正确的结果。 注意:不得增行或删行,也不得更改程序结构。 源程序如下: # include void fun(char (*ss)[N]) { int i,j,k=0,n,m,len; for(i=0;i for(i=0;i { m=n;len=strlen(ss); for(j=len;j>=0;j--) ss[i][m--]=ss[i][j]; for(j=0;j void main() { char ss[M][N]; int i; FILE *fp; fp=fopen(\ if(fp==NULL) { printf(\ exit(0); } for(i=0;i printf(\ for(i=0;i printf(\ printf(\ 第 1 页 共 16 页 四川省第二十九次计算机二级考试C与C++语言 机试试题(2008年10月19日) fun(ss); for(i=0;i printf(\ fclose(fp); } 二、编写程序test1-2.c(60分) 程序的功能是:删除一个字符串中指定的字符。 编写fun函数,其功能是删除一个字符串中指定的字符。假设字符串为:turbo c and borland c++,指定要删除的字符为n,则删除后的字符串变为:turbo c ad borlad c++。如果输入的字符在字符串中不存在,则字符串照原样输出。同一字母的大、小按不同字符处理。 在main函数中输入一个字符串(可以有空格)和一个要删除的字符,调用函数fun,最后输出结果。 第 2 页 共 16 页 四川省第二十九次计算机二级考试C与C++语言 机试试题(2008年10月19日) (第二套) (60分钟) 一、程序调试题(40分) 磁盘上有一个名为test2-1.c的C程序,其中函数fun的功能是:用下面的公式求?的近似值,直到最后一项的绝对值小于指定的数(参数num)为止: ?411?1?1??357?? 例如,程序运行后,输入0.0001,则程序输出3.1414 。 请改正程序中的错误,使程序能得出正确的结果。 注意:不得增行或删行,也不得更改程序结构。 源程序如下: # include float n,t,pi; t=1;pi=0;n=1;s=1; while(t>=num) { pi=pi+t; n=n+2; s=-s; t=s%n; } pi=pi*4; return; } main() { float n1,n2; FILE *fp; fp=fopen(\ if(fp==NULL) { printf(\ exit(0); } printf(\ scanf(\ n2=fun(); printf(\ fprintf(fp,\ fclose(fp); } 二、编写程序test2-2.c(60分) 编写函数fun,其功能是:将形参指针a指向的字符顺序放入形指针c指向的字符串中,再把形参指针b指针的字符串逆序放入形参指针c指向的字符串中。注:不能使用字符串的复制和连接函数。 例如:a指向的字符串为adcb,b指向的字符串为213,则字符串c中的内容为adcb312。 第 3 页 共 16 页 四川省第二十九次计算机二级考试C与C++语言 机试试题(2008年10月19日) (第三套) (60分钟) 一、程序调试题(40分) 磁盘上有一个名为test3-1.c的C程序文件,其中函数fun的功能是:将数组a中n个整数进行移动,大于等于0的数放在数组的前面,小于0的数放在后面。 例如:数组中的数为:12 -34 56 -9 -10 25 9 -8 24 90,移动后的结果为:12 56 25 9 24 90 -34 -9 -10 -8 在main函数中,从一文本文件test3-1.in中读取10个整数放入整型数组中,调用函数fun,并输出最后的结果。 请改正程序中的错误,使其能得到正确的结果。 注意:不得增行或删行,也不得更改程序结构。 源程序如下: # include int i,j=0,b[20]; for(i=0;i b[j++]=a[i]; for(i=0;i void main() { int a[10],i; char filename[20]; FILE *fp; printf(\ scanf(\ if((fp=fopen(filename,\ printf(\ exit(0); } for(i=0;i<10;i++) fscanf(fp,\ fun(a,10); for(i=0;i<10;i++) printf(\ fclose(fp); } 二、编写程序test3-2.c(60分) 编写函数fun,函数fun的功能是:将字符串s最右边的n个字符赋值到新串t中,若n大于s的长度,则将s复制到t中。注:不能使用字符串的复制函数。 第 4 页 共 16 页 四川省第二十九次计算机二级考试C与C++语言 机试试题(2008年10月19日) 例如:字符串s为abcdefgh,n=5,则字符串t为defgh 。 main函数中输入一字符串s及n的值,调用fun函数并输出结果。 第 5 页 共 16 页 四川省第二十九次计算机二级考试C与C++语言 机试试题(2008年10月19日) (第四套)(60分钟) 一、程序调试题(40分) 磁盘上有一个名为test4-4.c的C程序文件,其功能是:在main函数中随机生成一个N*N的二维数组,fun函数使该数组左下半三角元素中的值乘以n。例如n=3,当a数组中的值为: ?197??397?????a??238?,运行程序后a数组的值就变为:a??698? ?121518??456?????在main函数中将运行结果输出到屏幕上和文件test4-4.out中。请改正程序中的错误,使它能得出正确 结果。 注意:不得增行或删行,也不得更改程序结构。 源程序如下: # include \# define N =3 int fun(int a[][N],n) { int i,j; for(i=0;i a[i][j]=*n; } main() { int a[N][N],n,i,j; FILE *fp; for(i=0;i printf(\ } do n=rand(); while(n<=3) printf(\ fun(a,n); fp=fopen(\ if(fp==NULL) { printf(\ exit(0); } for(i=0;i { printf(\ 第 6 页 共 16 页 四川省第二十九次计算机二级考试C与C++语言 机试试题(2008年10月19日) fprintf(fp,\ } printf(\ } fclose(fp); } 二、编写程序test4-2.c(60分) 假定输入的字符串只包含字母和*号。请编写函数fun(),它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出字符串的长度,形参h给出字符串中前导*号的个数,形参e给出字符串中尾部*号的个数。在编写函数时,不得使用C语言提供的字符串函数。 例如,若字符串中的内容****A*BC*DEF*G*******,删除后,字符串中的内容则应该是A* BC*DEF*G。 第 7 页 共 16 页 四川省第二十九次计算机二级考试C与C++语言 机试试题(2008年10月19日) (第五套)(60分钟) 一、程序调试题(40分) 给定程序test5-1.c,函数fun的功能是求两个形参的乘积和商,其结果存入形参指针所指的地址中,函数 io实现数据的输入和输出。假设输入文件test5-1.in有数据61.82和12.65,则两个数的乘积和商分别为782.02300和4.886957 。main函数调用函数 io 。 请改正程序中的错误,使程序能得出正确结果。、 注意:不得增行或删行,也不得更改程序结构。 源程序如下: # include void fun(double a,b,*x,*y) { x=a*b; y=a/b; } io() { int i; double a,b,c,d; file *rf,*wf; rf=fopen(\ wf=fopen(\ fscanf(rf,\ fun(a,b,c,d); fprintf(\ printf(\; fclose(rf); fclose(wf); } void main() { double a,b,c,d; clrscr(); io(); } 二、编写程序test5-2.c(60分) 用函数调用方式编写程序。要求实现:在主函数中输入一个3×4的整型矩阵,调用函数covert对其进行转置并将结果存放在另一个二维数组中,最后在主函数中输出结果。 答案 29-1套 参考答案: 一、程序调试题(文件名为 test1-1.c)( 40 分 ) # include void fun(char (*ss)[N]) { int i,j,k=0,n,m,len; 第 8 页 共 16 页 四川省第二十九次计算机二级考试C与C++语言 机试试题(2008年10月19日) for(i=0;i if(i=0) n=len; /* 改为:i==0 */ if(len for(i=0;i { m=n;len=strlen(ss); /* 改为:ss[i] */ for(j=len;j>=0;j--) ss[i][m--]=ss[i][j]; for(j=0;j void main() { char ss[M][N]; int i; FILE *fp; fp=fopen(\ if(fp==NULL) { printf(\ exit(0); } for(i=0;i fscanf(\); /* 改为:fp, \ */ printf(\ for(i=0;i printf(\ printf(\ fun(ss); for(i=0;i printf(\ fclose(fp); } 评分标准:每改对一处得8分 二、编程题(程序文件取名为 test1-2.c)(60分) 评分标准: 1. main函数30分 2. fun函数30分 1)字符串和字符输入正确 10分 1)删除字符方法正确 2)函数调用参数传递正确 10分 2)指针使用正确 3)输出结果正确 10分 3)s[i]=0 参考程序: # include 第 9 页 共 16 页 分分分10 10 10 四川省第二十九次计算机二级考试C与C++语言 机试试题(2008年10月19日) # define N 100 int fun(char s[],int c) { char *p=s; int i; while(*p) { if(*p!=c) s[i++]=*p; p++; } s[i]=0; } main() { char str[N],ch; printf(\ gets(str); printf(\ scanf(\,&ch); fun(str,ch); printf(\} 29-2套 参考答案: 一、程序调试题(文件名为 test2-1.c)( 40 分 ) # include float n,t,pi; t=1;pi=0;n=1;s=1; while ( t>=num ) /* 改为:fabs(t)>=num */ { pi=pi+t; n=n+2; s=-s; t=s%n; /* 改为:s/n */ } pi=pi*4; return; /* 改为:return pi */ } main() { float n1,n2; FILE *fp; fp=fopen(\r\ /* 改为:w */ if(fp==NULL) { printf(\ exit(0); } 第 10 页 共 16 页
正在阅读:
四川省二级c语言29次机试试题及答案11-24
【必备】合同协议书模板(合集5篇)08-22
无锡市惠山区2011-2012学年第一学期五校联考九年级数学反馈练习卷03-14
硼族元素(硼铝镓铟铊) 化学方程式总结02-27
《亮剑》经典语录05-09
《经济地理学》复习思考题06-16
长沙市统计局“廉政格言征文”选登11-26
精品范文-高中政治教师最新工作总结_教师最新工作总结03-21
精选-初中一年级一元一次方程应用题总结03-24
孔子生平及主要思想09-19
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 四川省
- 试题
- 二级
- 答案
- 语言
- 七年级数学下学期暑假作业数据的收集、整理(无答案)新人教版
- 几何光学习题及解答
- 四年级下册数学课堂作业:三角形的三边关系
- 人教版四年级语文下册第六单元作文备课教案
- 南钢烧结工程单机试车方案
- 部编版一年级下册《第5课+小公鸡和小鸭子》2017年同步练习卷
- 师德师风考核登记表
- 曹韵贞教授窗口期6周论是真的吗?何大一窗口期
- 面试答题框架
- 北航考研材料综合金属重点
- 电梯制造与安装安全规范 GB7588-2003
- 八年级第二学期物理第二次练习试卷月考
- 文献检索题库
- 组合数学第四版卢开澄标准答案-第四章精品资料
- 2017-2018学年高一数学下学期知识点课后训练9
- 3S技术在精细农业中的应用实例分析
- 对于21.75和20.83,20.92的区别,在日常工作中如何使用?
- 江苏省住院医师规范化培训出科试题B超1
- 物料搬运机器人设计毕业设计论文
- 建筑构造重点 答案已标注