欢迎来到天天文库
浏览记录
ID:38694391
大小:56.50 KB
页数:8页
时间:2019-06-17
《四川省二级C语言31次机试试题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、四川省第三十一次计算机二级考试C与C++语言机试试题(2009年10月25日)(第一套)(60分钟)一、程序调试题(文件名为test1-1.c)(40分)fun函数的功能是:检查字符串str1中是否包含有子串str2,如果有则返回其子串出现的次数,并记录每个子串出现的起始位置。在main函数中从文件test1-1.dat中分别输入两个字符串str1和str2,调用fun函数,然后输出子串在母串中出现的次数,以及每个子串出现的起始位置。例如:当str1为“thedaythemonththeyear”,str2“the”时,输出为
2、:出现3次,起始位置分别是:0,8,18。请改正程序中的错误,使它能得出正确结果。注意:不得增行或删行,也不得更改程序结构。源程序如下:#include#include#include#defineN80voidmain(){charstr1[N],str2[N];inti,j,locat[10];intfun(char*,char*,int*);FILE*fp;if((fp=fopen("test1-1.dat","r"))=NULL){printf("Cannoto
3、penthefile.");exit(0);}fgets(str1,fp);fgets(str2,N-1,fp);printf("str1:%sstr2:%s",str1,str2);fclose(fp);fun(str1,str2,locat);printf("arisentimes:%d,startplace:",i);for(j=0;j
4、0,posit=0;char*str;str=q;len=strlen(q);do{if(*p=*q){p++;posit++;}第8页共8页四川省第三十一次计算机二级考试C与C++语言机试试题(2009年10月25日)else{while((*q!=' ')
5、
6、(*q==*p)){q++;p++;posit++;}if(*q==' '){locat[i]=posit-len;i++;}}q=str;}while(*p!=' ');returni;}二、编写程序(程序文件名命为test1-2.c)(60分)(1)编写函数
7、fun,其功能是将所有满足如下条件的四位整数存放到形参数组a中:将四位整数的千位和十位构成一个两位数s,将百位和个位构成另一个两位数t,注意,这里不考虑两位数十位为0的特殊情况,即不将01,02,03等视为两位数。如果s是t的5倍,则将此四位数存放到形参数组a中。例如:对于整数6102,按照上述要求组成的两个两位数分别为60和12,而60=12*5,因此6102满足条件,将其存放到数组a中,存放到数组a中的整数的个数作为函数值返回。(2)编写函数main,在main函数中调用fun函数,并将数组a中存放的整数按一行5个输出到屏
8、幕上。(第二套)(60分钟)一、程序调试题(文件名为test2-1.c)(40分)在main函数中,从文本文件test2-1.dat中读出N个长度为5的字符串,调用fun函数,判断字符串s是否为回文串,是返回1,不是则返回0。在main函数中输出是回文的字符串及其个数。说明:回文串是指一个字符串正读反读都一样。例如:level是回文串。请改正程序中的错误,使它能得出正确的结果。注意:不得增行或删行,也不得更改程序的结构。源程序如下:#include#include#include9、ib.h>#defineN5intfun(chars){inti,j;j=strlen(s);for(i=0,j--;i10、}for(i=0;i
9、ib.h>#defineN5intfun(chars){inti,j;j=strlen(s);for(i=0,j--;i10、}for(i=0;i
10、}for(i=0;i
此文档下载收益归作者所有